gpt4 book ai didi

c# - 如何修复 "The ConnectionString property has not been initialized"

转载 作者:IT王子 更新时间:2023-10-29 04:06:19 32 4
gpt4 key购买 nike

当我启动我的应用程序时,我得到:The ConnectionString property has not been initialized.

网络配置:

<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 是一个类似“select * from table”的查询。 sqlParams 与此处无关。

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

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

最佳答案

应该这样引用连接字符串:

MySQLHelper.ExecuteNonQuery(
ConfigurationManager.ConnectionStrings["MyDB"].ConnectionString,
CommandType.Text,
sqlQuery,
sqlParams);

ConfigurationManager.AppSettings["ConnectionString"] 将在 AppSettings 中查找名为 ConnectionString 的内容,但它找不到。这就是为什么您的错误消息指示 "ConnectionString"属性尚未初始化,因为它正在寻找名为 ConnectionStringAppSettings 的已初始化属性.

ConfigurationManager.ConnectionStrings["MyDB"].ConnectionString 指示查找名为“MyDB”的连接字符串。

Here is someone talking about using web.config connection strings

关于c# - 如何修复 "The ConnectionString property has not been initialized",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1007786/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com