在实体框架DBcontext中使用SqlConnectionStringBuilder和EntityConnection

本文关键字:SqlConnectionStringBuilder EntityConnection 实体 框架 DBcontext | 更新日期: 2023-09-27 18:27:32

这是我过去问题的延续

基本上,我将首先使用实体框架DB连接到具有相同表结构的多个数据库。我将循环并通过一个参数传递数据库目录。(数据库名称在表中)。我在base()中得到一个无效的参数错误。我甚至不确定我做得是否正确,因为我以前从未使用过那些构建器类。这是我的代码:

public MirrorBranchesEntities(string db)
        : base(ConnectToSqlServer(db))
    {
    }
    public static MirrorBranchesEntities ConnectToSqlServer(string catalog)
    {
        var sqlBuilder = new SqlConnectionStringBuilder
        {
            DataSource = "(local)",
            InitialCatalog = catalog,
            PersistSecurityInfo = true,
            IntegratedSecurity = true,
            MultipleActiveResultSets = true,
            UserID = "sa",
            Password = "Qwer0987"
        };
        var entityConnectionStringBuilder = new EntityConnectionStringBuilder
        {
            Provider = "System.Data.EntityClient",
            ProviderConnectionString = sqlBuilder.ConnectionString,
            Metadata = "res://*/MirrorBranches.csdl|res://*/MirrorBranches.ssdl|res://*/MirrorBranches.msl"
        };
        return new MirrorBranchesEntities(sqlBuilder.InitialCatalog);
    }

在实体框架DBcontext中使用SqlConnectionStringBuilder和EntityConnection

问题可能在这里:

IntegratedSecurity = true,
//...
UserID = "sa",
Password = "Qwer0987"

您必须决定是使用IntegratedSecurity(通过Windows身份验证)还是使用UserIDPassword的SQL Server身份验证。

相关文章:
  • 没有找到相关文章