相关疑难解决方法(0)

如何在.NET Core中实现DbContext连接字符串?

我的情况与此链接非常相​​似,或者至少我的代码类似,我试图找到一种方法在.NET Core语法中应用相同的方法.

将连接字符串传递给代码优先的DbContext

我的具体代码如下:

public partial class CompanyFormsContext : DbContext
{
    public CompanyFormsContext()
        : base("name=CompanyFormsContext")
    {
    }

    public CompanyFormsContext(string connName)
        : base("name=" + connName)
    {
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

我收到一个错误说:

错误CS1503参数1:无法从'string'转换为'Microsoft.EntityFrameworkCore.DbContextOptions'CompanyForms..NETCoreApp,Version = v1.0

当我翻过括号base("name=CompanyFormsContext")base("name=" = connName).

在.NET Core中实现此功能的正确方法是什么?

编辑:

我想分享我在appsettings.json文件中有关于数据库连接的以下信息:(但是,我在startup.cs中没有设置)

  "Data": {
    "CompanyFormsContext": {
      "ConnectionString": "Server=(localdb)\\projectsv13;Database=companyforms;Trusted_Connection=True;"
    },
    "CompanyFormsContextQA": {
      "ConnectionString": "Server=(localdb)\\projectsv13;Database=companyforms;Trusted_Connection=True;"
    }
  }
Run Code Online (Sandbox Code Playgroud)

我发现以下链接在Startup.cs中添加DbContextOptions没有在网站上注册数据存储,我想知道一个简单的protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)是否足以修复我的连接?

从链接:

services.AddEntityFramework(Configuration)
    .AddSqlServer()
    .AddDbContext<MyDbContext>(
        options =>
        options.UseSqlServer(Configuration.Get("Data:CompanyFormsContext:ConnectionString"))
    );
Run Code Online (Sandbox Code Playgroud)

我的Startup.cs中是否需要这种服务?

.net c# asp.net entity-framework

26
推荐指数
4
解决办法
3万
查看次数

标签 统计

.net ×1

asp.net ×1

c# ×1

entity-framework ×1