我們的ASP.NET 5/MVC 6項目通過訪問我們的數據庫,然後進入業務層組件,然後進入DAL(數據庫優先)程序集。嘗試執行使用DbContext訪問數據庫的業務層代碼時,MVC 6代碼崩潰:錯誤:在應用程序配置文件中找不到名爲「MyEntity」的連接字符串。我試圖用各種方式在MVC項目config.json,appsettings.json中定義MyEntity連接字符串,但沒有運氣。ASP.NET 5/MVC 6數據庫優先 - 在應用程序配置文件中找不到名爲MyEntity的連接字符串
如果從測試項目執行業務層方法,其中我有預期的app.config文件,連接字符串語法如下,它沒有問題。
注這個問題也可以被重新表述爲如何將MVC 5遷移到MVC 6的應用程序,其中,所述MVC 5應用鬆散耦合DB訪問DAL層和MVC代碼有EF的NO知識和ONLY供給的DAL中的DbContext對象所需的web.config連接字符串?
任何幫助將不勝感激,讓我知道如果你需要任何更多的信息。在測試項目
配置文件語法:
<add name="MyEntity"
connectionString="metadata=res://*/MyModel.csdl|res://*/MyModel.ssdl|res://*/MyModel.msl;provider=System.Data.SqlClient;provider connection string="data source=MyServer;initial catalog=MyDB;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework""
providerName="System.Data.EntityClient" />
可能是錯誤的語法config.json文件。
{
"Data": {
"defaultConnection": {
"connectionString": "metadata=res://*/MyModel.csdl|res://*/MyModel.ssdl|res://*/MyModel.msl;provider=System.Data.SqlClient;provider connection string="data source=MyServer;initial catalog=MyDB;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework""
},
"entityFramework": {
"MyEntity": {
"ConnectionString": "name=data:defaultConnection:connectionString"
}
}
}
}
你的Startup.cs是什麼樣的?數據庫上下文是如何創建的? –