App config c connectionstring

При работе с базами данных нам приходится иметь дело со строками подключения (Connection String). Хардкод таких строк прямо в коде является плохим тоном. Вместо этого строка подключения обычно хранится в конфигурационном файле App.Config (или Web.config, если речь идет о ASP.NET приложении). В этой заметке я покажу как можно получить строку подключения из такого файла.

Прежде всего нужно убедиться что у нас есть строка подключения в файле App.Config:

Далее можно использовать эту строку подколючения в нашем коде следующим образом:

Для того чтобы это работало надо добавить следующую инструкцию using в начале файла:

Очередь просмотра

Очередь

  • Удалить все
  • Отключить

Хотите сохраните это видео?

  • Пожаловаться

Пожаловаться на видео?

Выполните вход, чтобы сообщить о неприемлемом контенте.

Понравилось?

Не понравилось?

Points covered:
1. Defining Configuration manager in C#

how to use connection string using app config file

Cоздание файла App.Config c элементом connectionStrings

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

Создание и добавление файла App.Config

Чтобы создать конфигурационный файл необходимо выполнить несколько простых действий:

1. Перейдите в окно Solution Explorer

2. Нажмите правую кнопку мыши на имени текущего проекта

3. В появившемся контекстном меню выберите пункт Add, появиться дополнительное подменю, нажмите на пункт New Item.

4. Откроется диалоговое окно со списком шаблонов. Найдите шаблон с именем Application Configuration File, если требуется, измените, имя файла, после чего нажмите на кнопку Add.

В Solution Explorer появится добавленный файл App.Config.

Открываем добавленный файл, щелкнув по нему двойным кликом мыши в окне Solution Explorer.

Файл App.Config это обычный XML файл, внутри которого по умолчанию содержится строка декларации и один корневой элемент configuration. Сам же файл конфигурации, опять же по умолчанию, хранится в папке текущего проекта.

Если вы не знаете, что такое XML и как с ним работать, то прочитайте статью: Введение в язык XML, в которой вкратце изложены все основные моменты.

Создание и добавление элемента connectionStrings

Создадим новый элемент connectionStrings. Для этого сначала введите знак меньше ().

Внутри созданного элемента создадим ещё один элемент с именем add

Для данного элемента добавим несколько атрибутов. Чтобы добавить атрибут нажмите на клавишу пробел после слова add, появится меню авто подстановки.

Выберите атрибут name и нажмите на клавишу Enter

Внутри двойных кавычек укажите любое имя, например MysqlConStr.

Затем добавьте следующий атрибут connectionString

Внутри двойных кавычек нужно указать строку подключения, которая состоит из пары: ключ = значение.

Server указываем ip адрес или имя сервера, где лежит база данных MySQL. Предпочтительнее указывать ip адрес.

Database – имя базы данных;

Uid – пользователь;

Pwd – пароль;

Каждый пара отделяется точкой запятой, а для установки значения используется знак равно.

Строка подключения может содержать множество других ключей, например:

Port по умолчанию MySQL сервер использует порт 3306 и его можно не указывать, но если же по какой-то причине номер порта был изменен, то его следует указать явно.

SslMode если при работе с базой данных вы хотите использовать безопасное соединение с сервером, то укажите для данного параметра одно из следующих значений:

Preferred если сервер поддерживает SSL (криптографический протокол, который обеспечивает безопасность связи) то будет установлено безопасное соединение, если нет, то обычное.

Required все подключения будут только через протокол ssl. Если же на сервере нет поддержки ssl, то при обычном подключении вы получите отказ в подключении к серверу.

Все остальные ключи и их описание можно найти на официальном сайте MySQL.

После добавления строки подключения, добавим ещё один атрибут providerName, который будет хранить имя поставщика данных.

полное содержимое файла App.Config

Таким же образом можно указать любое количество строк подключения и поставщиков данных к разным базам данных: MSSQL, Oracle, Access, например:

Ещё одним преимуществом файлов конфигурации, является быстрое изменение данных, которое не требует перекомпиляции проекта, ведь достаточно всего лишь внести изменения в файл XML, который является отдельным файлом.

Получение данных из файла конфигурации

Конфигурационный файл создан и теперь осталось научиться читать данные из файла App.Config.

Для начала нужно подключить в проект сборку (dll файл) System.Configuration;

2. Чтобы при написании кода обращаться к типам и членам, не используя полных имен, добавьте следующую строку:

В предыдущей статье строка подключения была создана при помощи объекта типа MySqlConnectionStringBuilder (полный исходник здесь)

Удалим весь блок кода, а так же строку

Затем напишем следующий код:

В квадратных скобках указываем значение атрибута name элемента add. В результате в объекте conString мы получаем все значения элементов и атрибутов файла App.Config.

И последнее, что осталось сделать, это передать в объект MySqlConnection созданную строку подключения.

Либо можно сразу же не создавая объект ConnectionStringSettings передать в конструктор класса MySqlConnection конструкцию следующего вида:

8 thoughts to “Cоздание файла App.Config c элементом connectionStrings”

А у меня в этой строке выкидывает какое то исключение. Я пока только обучаюсь и не особо могу понять, что к чему.

Что то ругается именно на ConnectionString в кавычках.
Предупреждение типа NullReferenceException was unhandled

Мало информации… трудно сказать в чём именно проблема.

conString.ConnectionString — это свойство, которое содержит значение connectionString в xml файле App.config

Если выдаёт null, то возможно допущена описка или неверно указано имя элемента в xml файле, либо что-то с его атрибутами.

Еще есть одна особенность. При создании файла конфига в окне создания пишу название файла например MyConnect.config а создается их 2. Первый с названием App.config. Я кстати который второй создался удалил сразу. Может быть в этом причина и зачем тогда студия создает второй?
Кстати компиляция и запуск приложения проходят нормально. Но при нажатии на кнопку, перебрасывает в студию и подсвечивает выше описанную строку с выделением на onnectionString.
Правильность написания уже несколько раз перепроверил, даже делал копипаст вашего кода. Сейчас с нуля еще раз попробую все пересоздать.

Ах да. Пользуюсь Visual Studio 2013 community


[an error occurred while processing the directive]
Карта сайта