配置系统初始化失败。

257

我目前正在创建一个登录表单,有以下代码:

string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
try
{
    using (OdbcConnection connect = new OdbcConnection(connectionString))
    {
        connect.Open();
        OdbcCommand cmd = new OdbcCommand("SELECT username, password FROM receptionist", connect);
        OdbcDataReader reader = cmd.ExecuteReader();

        if (username_login.Text == username && password_login.Text == password)
        {
            this.Hide();
            MessageBox.Show("Invalid User", "Login Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            this.Close();
        }
        else 
            MessageBox.Show("Invalid User", "Login Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        connect.Close();
    }
}
catch (OdbcException ex)
{
    MessageBox.Show(ex.Message, "error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}

但是每当我尝试输入用户名和密码时,就会出现一个名为“Configuration system failed to initialize”的错误。这是什么问题,我该如何解决?


请参见配置系统初始化失败异常 - The Scrum Meister
2
另一种场景 - 如果您正在查找ConfigurationManager.Appsettings [“”],请确保<appSettings>存在于配置中。否则,您将收到此异常。 - LCJ
1
如果您的appsettings有两个位置,也可能会发生这种情况。 - Lawrence Thurman
29个回答

0
如果您有自定义部分,需要在configurations标签下方的configSections中提及。
请检查您的转换文件,确保删除不必要的标签。只有那些会变化的部分需要在转换文件中存在。如果不需要,在转换文件中不要提及配置部分。这也会导致问题。
如果您的machine.config中有任何语法错误,那么也会出现此错误。

0
在我的情况下,唯一的解决方案是在我的测试项目中也添加对 System.Configuration 的引用。

0

这有点傻,但我通过从源代码控制获取最新版本的代码来解决了它。我认为有人添加了一些新的配置元素,我需要覆盖我的配置文件。OP显示了我遇到的错误,但并没有真正指引我朝正确的方向前进。


0

我刚刚遇到这个问题,原因是我在一个<configuration>元素内嵌套了另一个<configuration>元素。


0

我也遇到了同样的问题,但是我无意中写错了代码,没有写上“the”,前一个标签因此被包含在这个标签内。于是“配置系统初始化失败”的错误就出现了。希望这能有所帮助。


0
在我的情况下,在我的 .edmx 文件中,我运行了“从数据库更新模型”的命令。这个命令向我的 app.config 文件添加了一个不必要的连接字符串。我删除了那个连接字符串,一切又恢复正常了。

0
在我的情况下,我在app.config文件中有两个configsections。删除代码行中隐藏的一个后,应用程序正常工作。
因此,对于遇到相同问题的人,请首先检查是否存在重复的configsections。

0
尝试将 .config 文件保存为 utf-8,如果里面有一些“特殊”字符。这是我在控制台应用程序中遇到的问题。

0
我从.net升级到.netcore。App.config仍然存在于我的项目中,但我已经将设置迁移到了Settings.settings文件中。对我来说,解决方法是从Debug/Release文件夹中删除.config文件,重命名/删除App.config,并重新编译/运行项目。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接