Системе конфигурации не удалось инициализироваться - PullRequest
207 голосов
/ 22 июня 2011

Я новичок в Visual Studio.В настоящее время я создаю форму входа.

У меня есть этот код.

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);
}

Но всякий раз, когда я пытаюсь ввести имя пользователя и пароль, возникает ошибка, называемая Система конфигурациине удалось инициализировать .Мне просто интересно, что это за проблема и как я могу ее решить?

Пожалуйста, помогите.

Ответы [ 21 ]

1 голос
/ 12 июня 2013

Ничего себе, мне понадобилось целую вечность, чтобы понять это. При изменении атрибута [assembly: AssemblyCompany("CompanyName")] на AssemblyInfo.cs по какой-то причине эта ошибка исчезла. Я ссылался на проект, который имел другое значение для атрибута [assembly: AssemblyCompany("CompanyName")]. Я убедился, что оба проекта имеют одинаковое значение атрибута, и он работал отлично!

0 голосов
/ 21 июня 2018

Я решил проблему с помощью кода ниже

   <?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <sectionGroup name="applicationSettings"
                  type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >

      <section name="YourProjectName.Properties.Settings"
               type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
               requirePermission="false" />

    </sectionGroup>

  </configSections>
  <appSettings>
    <add key="SPUserName" value="TestUser" />
    <add key="SPPassword" value="UserPWD" />
  </appSettings>
</configuration>
0 голосов
/ 29 марта 2018

В моем случае в моем файле .edmx я выполнил команду «Обновить модель из базы данных».Эта команда добавила ненужную строку подключения в мой файл app.config.Я удалил эту строку подключения, и все снова было хорошо.

0 голосов
/ 27 ноября 2017

Если вы имеете дело с веб-заданием Azure - мне пришлось удалить следующее после обновления до последней версии 4.6.1.

  <compilation debug="true" targetFramework="4.6.1">
    <assemblies>
      <add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
    </assemblies>
  </compilation>

Надеюсь, это поможет.

0 голосов
/ 04 августа 2017

В моем случае у меня есть две конфигурации в файле app.config.После удаления того, что скрывается в строках кода, приложение работает нормально.

Таким образом, если у кого-то возникла та же проблема, сначала проверьте, есть ли у вас дублированные конфигурации

0 голосов
/ 02 мая 2016

Я тоже столкнулся с той же проблемой, но случайно я написал без записи, предыдущий должен идти внутри этих тегов.таким образом возникла ошибка «Не удалось инициализировать систему конфигурации».Надеюсь, это поможет

0 голосов
/ 29 января 2016

Это довольно глупо, но для меня я исправил это, выполнив последние действия из контроля исходного кода в моем коде.Я думаю, что был какой-то новый элемент конфигурации, который был добавлен кем-то другим, и мне нужно было перезаписать мои файлы конфигурации.OP показывает ошибку, которую я получил, которая на самом деле не указывала мне правильное направление.

0 голосов
/ 29 июля 2015

Стоит отметить, что если вы добавляете такие вещи, как строки подключения, в app.config, то, что если вы добавляете элементы за пределы определенных разделов конфигурации, они сразу не будут жаловаться, но когда вы попытаетесь получить к ним доступ, выможет затем получить вышеуказанные ошибки.

Свернуть все основные разделы и убедиться, что нет никаких элементов за пределами определенных.Очевидно, когда вы действительно заметили это.

0 голосов
/ 17 января 2019

Попробуйте сохранить файл .config как utf-8, если у вас есть «специальные» символы. Это было проблемой в моем случае консольного приложения.

0 голосов
/ 21 мая 2019

Поскольку @ Flash Gordon упоминается в его комментарии, вам нужно будет определить любой пользовательский тег (как раздел) в вашем файле App.config ,под <configSections>.Например, вы работаете над проектом автоматизации тестирования с SpecFlow и добавляете тег <specFlow>, тогда простейшая версия App.config будет выглядеть так: enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...