使用Entity Framework 6+时,我可以让一个类继承这样的DbContext形式
MyContext : DbContext
然后我可以使用像这样的代码
using (var context = new MyContext())
{
...
}
只要我有一个配置文件,其连接字符串设置的名称相同,就会由Entity Framework提取。非常适合不同的环境。
现在,我正在使用在.NET CORE,.NET STANDARD和Entity Framework Core 2.1上运行的Azure函数
但是我不知道该如何实现。即使在Azure Function应用程序中有一个专用于ConnectionStrings的部分,我也希望local.seeting.json具有这样的输入
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"AzureWebJobsDashboard": "UseDevelopmentStorage=true",
},
"ConnectionStrings": {
"MyContext": "Server=(localdb)\\mssqllocaldb;Database=MyContext;Trusted_Connection=True;ConnectRetryCount=0"
}
}
应该做同样的事情。但是不。
我能找到的所有示例都是必须将DbContextOptionsBuilder或连接字符串注入构造函数的地方。
但是由于它是Azure Function,并且DI框架不能很好地发挥它的作用,所以我宁愿避免将连接字符串或db上下文一直传递到各个层。
简而言之:EF Core不能从文件本身获取设置吗?