【问题标题】:error about passing connection string to DbContext(string nameOrConnectionString)关于将连接字符串传递给 DbContext(字符串名称或连接字符串)的错误
【发布时间】:2018-03-15 08:43:15
【问题描述】:

我正在尝试将 data source=(local);initial catalog=xxx;integrated security=false;user id=sa;password=yyy; 传递给我的 EFDbContext。我所做的是

public class EFDbContext : DbContext
{
    public EFDbContext() : base(@"data source=(local);initial catalog=xxx;integrated security=false;userid=sa;password=yyy;MultipleActiveResultSets=True;App=EntityFramework")
    {
    }
}

但它会引发一个错误说

“不支持关键字:‘初始目录’”

当我运行程序时。我的连接字符串的格式有问题吗?

【问题讨论】:

  • 连接字符串 - 不支持关键字:'初始目录'stackoverflow.com/questions/8150737/…
  • 应该是Initial Catalog=xxx;,注意是大写字母,我也推荐使用SqlConnectionStringBuilder
  • @styx 不是字母大小写,我也试过 Initial Catalog。
  • @HoussemRomdhani DbContext 的构造函数不能将提供者名称作为附加参数。

标签: c# entity-framework


【解决方案1】:
public class EFDbContext : DbContext
{
    public EFDbContext() : base(@"data source=(local);initial catalog=xxx;integrated security=false;userid=sa;password=yyy;MultipleActiveResultSets=True;App=EntityFramework")
    {
        this.Database.Connection.Provider = "System.Data.SqlClient";
    }
}

【讨论】:

  • this.Database.Connection 没有Provider的定义
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-11-18
  • 1970-01-01
  • 1970-01-01
  • 2012-07-11
  • 1970-01-01
  • 2011-06-15
相关资源
最近更新 更多