我正在开发一个VS2012解决方案,它有一个ASP.NET MVC 4.0项目和多个类库,如我的经理,提供者和DataAccess项目。我的dbContext类是在DataAccess项目中定义的。从我的DataAccess库项目中的app.config读取连接字符串,用于dbContext
我的目标是限制DataAccess项目的App.Config文件中的连接字符串信息。我试图避免在项目中的任何其他地方指定connectionString,因为它是与数据库交互的我的DataAccess类。
现在,如果我通过硬编码指定我的连接字符串my dbContext类,我的项目工作正常,并且能够从数据库中读取数据。
public MyDbContext()
: base(@"Data Source=MYLAPTOP\SQL2012MAIN;Initial Catalog=MyDB;User ID=sa;Password=*****")
{
}
但是,如果我指定这样的app.config文件中的连接字符串:
<connectionStrings>
<add name="MyDBConnection" connectionString="Data Source=MYLAPTOP\SQL2012MAIN;Initial Catalog=MyDB;User ID=sa;Password=*****;Connect Timeout=200; pooling='true" providerName="System.Data.SqlClient" />
</connectionStrings>
,并在我的DbContext班组长使用如下:
public MyDbContext()
: base("MyDBConnection")
{
}
它不工作。我尝试使用相同的连接字符串在我的MVC项目的web.config文件还,但话又说回来,我得到同样的错误(附图片):
可有人请指导我...
感谢哈日
嘿路易斯,thnx很多回复和看我的问题。这个单引号(')是一个问题。一旦我删除它,连接字符串开始按照我的web.config文件中的预期工作。 – Hari 2014-11-10 08:30:55
但是,如果我使用相同的连接。我的app.config文件中的字符串出现以下错误:“建立到SQL Server的连接时发生网络相关或实例特定的错误。服务器未找到或无法访问。验证实例名称是否正确,并将SQL Server配置为允许远程连接。 (提供程序:SQL网络接口,错误:50 - 发生本地数据库运行时错误。指定的LocalDB实例不存在。“ – Hari 2014-11-10 08:34:33
由于任何机会,你认为自从我的web.config文件现在没有任何连接字符串字段,我的应用程序可能试图从appHost.config中读取它?loaclDB引用建议它尝试使用SQLServerExpress – Hari 2014-11-10 08:35:16