我们有一个带有 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/