entity-framework – 实体框架DbContext没有看到app.config / web.config中的连接字符串

前端之家收集整理的这篇文章主要介绍了entity-framework – 实体框架DbContext没有看到app.config / web.config中的连接字符串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以,我已经按照ADO.NET团队博客的指示尝试制作一个小型测试项目.
我仔细检查了一切.它似乎不起作用,并一直说连接字符串丢失.

http://blogs.msdn.com/b/adonet/archive/2011/03/15/ef-4-1-model-amp-database-first-walkthrough.aspx

步. 1
构建此UserModels.dll.在dll,App.Config文件中,edmx生成了这个连接字符串:(在创建它时点击’test’按钮,它成功连接,并从’UserDatabase’生成所有表的edmx图)

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="UserModelsContainer" connectionString="Metadata=res://*/UserModels.csdl|res://*/UserModels.ssdl|res://*/UserModels.msl;provider=System.Data.sqlClient;provider connection string=&quot;data source=MyDesktop\sql2008;initial catalog=UserDatabase;integrated security=True;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>
</configuration>

第2步.
然后我做了一个测试项目:

class UnitTetst1 ....
TestMethod1()....
using (var db = new UserModelsContainer()) {
  int i = db.Users.Count(); // <---expecting '0' for a new db,but I get an exception
}

———问题在这里—————–

步骤3.运行测试.然后我得到一个错误InvalidOperationException像这样:

"No connection string named 'UserModelsContainer' could be found in the application config file."

好像DbContext不知道在哪里从App.Config中取出connectionStrings?

请帮帮忙~~

解决方法

运行程序时,正在运行的.exe文件的app.config被读取.永远不会使用.dll的app.config.由于UserModel.dll是一个DLL,因此您必须在某个地方运行.exe(或网站).将连接字符串放在该exe的app.config中(或者如果它是web.config中的网站).

猜你在找的HTML相关文章