我只想将SqlConnectionStringBuilder
传入我的dbcontext base()中,但代码不起作用。无法在实体框架DB中的dbcontext中首先创建动态连接
public MirrorBranchesEntities(string db)
: base(ConnectToSqlServer(db))
{
}
public static string ConnectToSqlServer(string catalog)
{
var sqlBuilder = new SqlConnectionStringBuilder();
sqlBuilder.DataSource = "(local)";
sqlBuilder.InitialCatalog = catalog;
sqlBuilder.PersistSecurityInfo = true;
sqlBuilder.IntegratedSecurity = false;
sqlBuilder.MultipleActiveResultSets = true;
sqlBuilder.UserID = "sa";
sqlBuilder.Password = "Qwer0987";
var entityConnectionStringBuilder = new EntityConnectionStringBuilder();
entityConnectionStringBuilder.Provider = "System.Data.EntityClient";
entityConnectionStringBuilder.ProviderConnectionString = sqlBuilder.ConnectionString;
entityConnectionStringBuilder.Metadata = "res://*/MirrorBranches.csdl|res://*/MirrorBranches.ssdl|res://*/MirrorBranches.msl";
return sqlBuilder.ToString();
}
换句话说,我希望把这个
"name=" + connectionStringName + "connectionString=metadata=res://*/MirrorBranches.csdl|res://*/MirrorBranches.ssdl|res://*/MirrorBranches.msl;provider=System.Data.SqlClient;provider connection string="data source=(local);initial catalog=" + db + ";user id=sa;password=Qwer0987;MultipleActiveResultSets=True;App=EntityFramework" providerName=System.Data.EntityClient"
到SQL连接字符串生成器来把我的DbContext。
非常感谢你@Alexcei 。对于迟到的答复批准感到抱歉。被淘汰。再次谢谢你! –