FluentData/Context/PartialClasses/ConnectionStrings.cs
(完整代码) 1KBusing System.Configuration;
namespace FluentData
{
public partial class DbContext : IDbContext
{
private void ConnectionStringInternal(string connectionString, DbProviderTypes dbProviderType, IDbProvider dbProvider)
{
ContextData.ConnectionString = connectionString;
ContextData.ProviderType = dbProviderType;
ContextData.Provider = dbProvider;
}
public IDbContext ConnectionString(string connectionString, DbProviderTypes dbProviderType)
{
ConnectionStringInternal(connectionString, dbProviderType, new DbProviderFactory().GetDbProvider(dbProviderType));
return this;
}
public IDbContext ConnectionString(string connectionString, IDbProvider dbProvider)
{
ConnectionStringInternal(connectionString, DbProviderTypes.Custom, dbProvider);
return this;
}
public IDbContext ConnectionStringName(string connectionstringName, DbProviderTypes dbProviderType)
{
ConnectionStringInternal(GetConnectionStringFromConfig(connectionstringName), dbProviderType, new DbProviderFactory().GetDbProvider(dbProviderType));
return this;
}
public IDbContext ConnectionStringName(string connectionstringName, IDbProvider dbProvider)
{
ConnectionStringInternal(GetConnectionStringFromConfig(connectionstringName), DbProviderTypes.Custom, dbProvider);
return this;
}
private string GetConnectionStringFromConfig(string connectionStringName)
{
var settings = ConfigurationManager.ConnectionStrings[connectionStringName];
if (settings == null)
throw new FluentDataException("A connectionstring with the specified name was not found in the .config file");
return settings.ConnectionString;
}
}
}
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
