entity-framework - 从 dotnet 核心使用的硬编码 EF6 连接字符串名称

标签 entity-framework asp.net-core entity-framework-6 .net-core asp.net-core-webapi

我们有一个带有 Entity Framework 6 和静态方法的现有 .NET Framework 库:

public class OrderManager
{
    public static OrderDTO GetOrderByOrderId(int oid)
    {
        var entities = new MyEntities();
        ....
    }
}

其中 MyEntities 具有硬编码的连接字符串名称

internal partial class MyEntities : DbContext
{
    public SSE3Entities() : base("name=MyEntities")   {}
}

在 ASP.NET 应用程序中使用时,web.config 具有如下定义的连接字符串:

<connectionStrings>
   <add name="MyEntities" connectionString="metadata=res://*/M..." providerName="System.Data.EntityClient" />
</connectionStrings>

但是我怎样才能在 aspnet 核心应用程序中重用这个库。尝试过:

{
  "ConnectionStrings": {
    "MyEnties": "metadata=res://*/M...",
  }, 
  "Logging": {
     ...
  }
}

我知道将连接字符串传递给 OrderManager 构造函数是我们几年前就应该做的,但现在更改它需要大量工作。

有什么方法可以让 EF 读取新的配置系统?

或者我们可以向旧的 ConfigurationManager 写入一些设置吗?

我试过在没有任何运气的情况下放入 web.config

最佳答案

从 nuget 添加 System.Configuration.ConfigurationManager

添加文件app.config

.net core applictaion是consle app,所以先找到app.config

应用程序配置:

<appSettings>
    <add key="webpages:Version" value="2.0.0.0"/>
</appSettings>

关于entity-framework - 从 dotnet 核心使用的硬编码 EF6 连接字符串名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42528668/

相关文章:

entity-framework - EF 7 - 导航属性 - SQL 不正确?

oracle - 部署和配置 ODP.NET,使其无需安装 Entity Framework 即可工作

asp.net-core - 将.Net Core应用发布到Azure之后,通过VS Online发布“运行时”文件夹

dependency-injection - DotNet Core 中 AuthorizationOptions 要求的依赖注入(inject)

c# - 从 Postman URL 向 API 发送字符串时获取 null

asp.net-mvc - 当我使用 asp.net mvc web api 读取 Oracle 表时出现严重错误(数据类型为 CLOB)

c# - 带有 SQL Server 数据库和 Entity Framework 错误的 Windows 应用程序部署

c# - Entity Framework - 在插入和自动递增之前检查条目是否存在

entity-framework-6 - 使用 Entity Framework 从 csv 文件批量插入

asp.net-mvc - Entity Framework 不返回相关对象