ConnectionString属性未初始化

时间:2009-12-29 23:35:40

标签: c# asp.net database-connection

我知道此问题之前已被问过,但之前的答案似乎与我的问题无关。

我定期得到“ConnectionString属性尚未初始化”。错误。这是web.config

中连接字符串的样子
<connectionStrings>
        <add name="Dev" connectionString="Data Source=192.168.200.132,1445;Initial Catalog=Test;User Id=tester;Password=test123;Pooling=true" providerName="System.Data.SqlClient"/>
</connectionStrings>

我正在使用

获取连接字符串
ConfigurationManager.ConnectionStrings["Dev"].ConnectionString

这是stacktrace

at System.Data.SqlClient.SqlConnection.PermissionDemand()
at System.Data.SqlClient.SqlConnectionFactory.PermissionDemand(DbConnection outerConnection)
at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
at System.Data.SqlClient.SqlConnection.Open()
at Lite.Data.Database`2.CheckConnection()
at Lite.Data.Database`2.ExecuteReader(String sql, QueryParam[] args)
at Lite.Data.LiteQuery.Results()

我有一个简单的查询构建器。 Results()编译查询并使用数据库类执行它。

另外,你知道我的数据库类名后面有“2”的原因吗?

感谢。

3 个答案:

答案 0 :(得分:0)

首先,Data Source参数对我来说很奇怪......但似乎可以使用逗号将IP与端口号分开。

因此,查看错误,看起来像权限问题。

您是否偶然从网络共享运行.NET可执行文件?从非本地驱动器运行.NET需要一些权限才能执行比“Hello World”更多的操作(搜索“caspol.exe”以获取更多详细信息)。

答案 1 :(得分:0)

您的连接字符串格式不正确。

尝试:

<connectionStrings>
    <add name="Dev" connectionString="Data Source=192.168.200.132:1445;Initial Catalog=Test;User Id=tester;Password=test123;Pooling=true" providerName="System.Data.SqlClient"/>
</connectionStrings>

在给定您正在使用的数据库的情况下,检查www.connectionstrings.com是否有正确的连接字符串格式。

此外,1445不是SQL Server的默认端口号。默认端口是1433. - 我不确定你是否会这样做,或者你是否真的改变了该服务器的端口号。

答案 2 :(得分:0)

请停止对此进行推测,如MVP .....,

我可以用强点重现,如果发生了异常,如果你已经回滚了你的事务,并尝试继续进一步的数据检索,Connection就会被关闭,所以错误。

如果您想了解有关您的错误的更多详细信息,请在VS IDE中将异常保持为ON。 (调试 - &gt;异常,检查异常......)你会看到导致此错误的脏代码!

Hydtechie