奇怪" ConnectionString属性尚未初始化。"错误

时间:2014-10-09 01:13:03

标签: c# asp.net sql-server asp.net-mvc connection-string

所以刚刚下载了一个新项目的源代码,该项目可以在其他几个开发人员的框中构建并运行良好。我收到了错误:

  

ConnectionString属性尚未初始化。

我可以使用Web.config中的连接字符串通过SQL Server Management Studio连接到数据库而不会出现问题。

引发此错误的库的源代码不可用。

该项目是一个ASP.NET MVC项目,在Web.config

中包含以下值
<connectionStrings>
    <add name="DbConnection" connectionString="Data Source=la-foo-server\development,1444;database=mydb;user id=myId;password=myPassword;" providerName="System.Data.SqlClient" />
</connectionStrings>
<appSettings>
    <add key="ConnectionStringName" value="DbConnection" />
</appSettings>

我已经尝试将App.Config添加到我的ASP.NET网站的bin和root中以防万一,出于某种原因,带有源代码的lib正在尝试读取App.Config而忽略了Web的.config。

的StackOverflow解决方案有助于:

开发人员在Windows 8.1环境中遇到了同样的情况,他转移到Windows 7环境并修复了错误。我正在使用Windows 7专业版,所以我想知道我的.NET框架安装是否存在问题。

ASP.NET MVC网站的目标是4.0版。我的其他大多数没有问题的项目都是针对.NET 4.5

2 个答案:

答案 0 :(得分:1)

所以我能够获取加载连接字符串的类库的源代码,事实证明代码正在加载一组连接字符串,如下所示:

   var collection = System.Web.Configuration.WebConfigurationManager.ConnectionStrings ?? System.Configuration.ConfigurationManager.ConnectionStrings;

        if (collection[1].Name == null)
            throw new Exception("Unable to detect connection string in app.config or web.config! Default connection string name is \'DbConnection.\'");

        db = new Database(collection[1].Name);

我的machine.config碰巧在MySql中有一个连接字符串,名为LocalMySqlServer。此连接字符串可能已由.NET MySql Connector安装添加,或者我可能自己进行了更改。

所以connectionstring集合正在从我的machine.config加载一个连接,所以collection[1]数组位置没有预期的连接字符串。这解释了为什么一些开发人员在他们的机器上没有问题,而其他开发人员确实在他们的机器上存在问题。

答案 1 :(得分:0)

选项1:

<connectionStrings>
    <add name="DbConnection" connectionString="Data Source=la-foo-server\development,1444;Initial Catalog=mydb;user id=myId;password=myPassword;" providerName="System.Data.SqlClient" />
  </connectionStrings>

选项2:

  <connectionStrings>
    <add name="DbConnection" connectionString="Data Source=la-foo-server\development;Initial Catalog=mydb;user id=myId;password=myPassword;" providerName="System.Data.SqlClient" />
  </connectionStrings>