如何修复“ ConnectionString属性尚未初始化”

当我启动应用程序时,我得到:

Web.config:

<connectionStrings>

<add name="MyDB"

connectionString="Data Source=localhost\sqlexpress;Initial Catalog=mydatabase;User Id=myuser;Password=mypassword;" />

</connectionStrings>

堆栈是:

System.Data.SqlClient.SqlConnection.PermissionDemand() +4876643

System.Data.SqlClient.SqlConnectionFactory.PermissionDemand(DbConnection outerConnection) +20

System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +117

System.Data.SqlClient.SqlConnection.Open() +122

我对.NET相当陌生,但我没有。我在Google上找到了很多答案,但没有一个能真正解决我的问题。

这意味着什么?我的web.config不好吗?我的功能不好吗?我的SQL配置是否无法正常工作(我正在使用sqlexpress)?

我这里的主要问题是我不确定从哪里开始调试它……任何事情都会有所帮助。

编辑:

错误代码:

MySQLHelper.ExecuteNonQuery(

ConfigurationManager.AppSettings["ConnectionString"],

CommandType.Text,

sqlQuery,

sqlParams);

sqlQuery是一个类似“从表中选择*”的查询。sqlParams在这里不相关。

这里的另一个问题是我的公司使用MySQLHelper,而我对此没有可见性(只有一个dll用于帮助程序库)。它在其他项目中一直运行良好,所以我99%的错误不是来自这里。

我想如果没有看到代码就无法调试它,我将不得不等待与创建此帮助程序的人取得联系以获取代码。

回答:

引用连接字符串的操作应如下:

MySQLHelper.ExecuteNonQuery(

ConfigurationManager.ConnectionStrings["MyDB"].ConnectionString,

CommandType.Text,

sqlQuery,

sqlParams);

ConfigurationManager.AppSettings["ConnectionString"]会在中寻找AppSettings名为的东西ConnectionString,但找不到。这就是为什么您的错误消息指出的"ConnectionString"

property has not been initialized原因,因为它正在寻找AppSettingsnamed

的初始化属性ConnectionString

ConfigurationManager.ConnectionStrings["MyDB"].ConnectionString 指示查找名为“

MyDB”的连接字符串。

这里有人在谈论使用web.config连接字符串

以上是 如何修复“ ConnectionString属性尚未初始化” 的全部内容, 来源链接: utcz.com/qa/433963.html

回到顶部