Файлы конфигурации и гибкость приложений

Файлы конфигурации и гибкость приложений

Для повышения гибкости своих приложений ADO.NET вы можете на стороне клиента использовать файл *.config, в котором в рамках элемента ‹appSettings› можно указать пользовательские пары ключей и значений. Вспомните из главы 11, что пользовательские даяние можно прочитать программно с помощью типов из пространства имен System.Configuration. Предположим, что в файле конфигурации вы указали строки соединения и поставщика данных так, как показано ниже.

‹configuration›

 ‹appSettings›

  ‹add key="provider" value="SqlServer" /›

  ‹add key="cnStr" value="Data Source=localhost;uid=sa;pwd=;Initial Catalog=Pubs"/›

 ‹/appSettings›

‹/configuration›

В этом случае вы можете добавить в Main() строки, обеспечивающие программное чтение этих значении. В результате вы, по существу, создадите источник (т.е. генератор) поставщика данных. Вот как может выглядеть соответствующая модификация указанного метода.

static void Main(string[] args) {

 // Чтение значения ключа provider.

 string dpStr = ConfigurationManager.AppSettings["provider"];

 DataProvider dp = (DataProvider)Enum.Parse(typeof(DataProvider), dpStr);

 // Чтение значения cnStr.

 string cnStr = ConfigurationManager.AppSettings["cnStr"];

 // Получение соединения.

 IDbConnection myCn = GetConnection(dp);

 myCn.ConnectionString = cnStr;

}

Замечание. Тип ConfigurationManager появился в .NET 2.0. He забудьте также установить ссылку на компоновочный блок System.Configuration.dll и указать using для пространства имен System.Configuration.

Если предыдущий пример преобразовать в библиотеку программного кода .NET (а не в консольное приложение), вы получите возможность создать любое число клиентов, которые могут устанавливать свои соединения, используя различные уровни абстракции. Но чтобы построить действительно полезную библиотеку, реализующую возможности источника поставщика данных, вы должны также использовать объекты команд, объекты чтения данных, адаптеры данных и другие типы, связанные с обработкой данных. Хотя построить такую библиотеку программного кода будет не слишком сложно, для нее потребуется весьма большой по объему программный код. К счастью, что касается .NET 2.0, добрые люди из Редмонда уже встроили все необходимое в библиотеки базовых классов,

Исходный код. Проект MyConnectionFactory размещен в подкаталоге, соответствующем главе 22.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Файлы конфигурации и Visual Studio 2005

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

Файлы конфигурации и Visual Studio 2005 Вы, конечно, можете всегда создавать XML-файлы конфигурации вручную с помощью своего любимого текстового редактора, но Visual Studio 2005 позволяет создать файл конфигурации в процессе построения программы-клиента. Для примера загрузите в Visual Studio


Файлы конфигурации удаленного взаимодействия

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

Файлы конфигурации удаленного взаимодействия Итак, вы успешно построили распределённое приложение, используя слой удаленного взаимодействия .NET. В связи c данными примерами следует обратить внимание на то что полученные приложения клиента и сервера содержат большой


1.5.5. Гибкость на всех уровнях

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

1.5.5. Гибкость на всех уровнях Многие операционные системы, называемые более "современными" или более "дружественными по отношению к пользователю", чем Unix, достигают "внешней красоты" путем связывания пользователей и разработчиков одной интерфейсной политикой. В таких


1.5.5. Гибкость на всех уровнях

Из книги MySQL: руководство профессионала автора Паутов Алексей В

1.5.5. Гибкость на всех уровнях Многие операционные системы, называемые более "современными" или более "дружественными по отношению к пользователю", чем Unix, достигают "внешней красоты" путем связывания пользователей и разработчиков одной интерфейсной политикой. В таких


10.3. Файлы конфигурации

Из книги Инфраструктуры открытых ключей автора Полянская Ольга Юрьевна

10.3. Файлы конфигурации Файл конфигурации (run-control file) — файл объявлений или команд, связанных с программой, которая интерпретирует его во время запуска. Если программа имеет специфическую для данного узла конфигурацию, которая совместно используется всеми пользователями


Зачем нужна такая гибкость?

Из книги Linux: Полное руководство автора Колисниченко Денис Николаевич

Зачем нужна такая гибкость? Стратегия экспорта, согласно которой каждый потомок класса имеет свою политику, хотя и усложняет проверку типов, но придает необходимую гибкость действиям разработчика.Предпринимались и иные попытки. Так, отдельные объектные языки


2.4.2. Параметры конфигурации

Из книги QNX/UNIX [Анатомия параллелизма] автора Цилюрик Олег Иванович

2.4.2. Параметры конфигурации Параметры конфигурированы через стандартный файл my.cnf или my.ini. Параметры могут быть конфигурированы, определяя имя параметра и соответствующее значение через пробел. Значения Memory могут быть определены в байтах или числом, сопровождаемым kb, mb


4.5.3. Функции, которые создают новые конфигурации из существующих 4.5.3.1. Функции геометрии, которые производят новые конфигурации

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

4.5.3. Функции, которые создают новые конфигурации из существующих 4.5.3.1. Функции геометрии, которые производят новые конфигурации Раздел "4.5.2. Функции Geometry" обсуждает несколько функций, которые создают новые конфигурации из


Контроль и гибкость

Из книги Язык Си - руководство для начинающих автора Прата Стивен

Контроль и гибкость Иногда решение о самостоятельном развертывании PKI или аутсорсинге базируется на чисто экономических соображениях. Небольшие организации из-за недостатка ресурсов чаще всего выбирают аутсорсинг. Но, безусловно, принятие этого решения не


16.2. Настройка Apache. Файлы конфигурации

Из книги Linux глазами хакера автора Флёнов Михаил Евгеньевич

16.2. Настройка Apache. Файлы конфигурации После установки Apache следует отредактировать следующие файлы:? /etc/httpd/conf/httpd.conf — основной файл конфигурации. Для Apache 2.x. этот файл может также называться httpd2.conf;? /etc/logrotate.d/apache или /etc/logrotate.d/httpd (в версии 2.0) — файл ротации


Гибкость и мобильность

Из книги Антимозг [Цифровые технологии и мозг] автора Шпитцер Манфред

Гибкость и мобильность При установлении соединения техника простого обмена сообщениями в качестве адресата сообщений (сервера) использует «магическую тройку» (триплет [1]) параметров ND, PID и CHID, где:• ND — дескриптор сетевого узла, на котором работает интересующая нас


Файлы конфигурации

Из книги автора

Файлы конфигурации Файлы конфигурации размещены в корневом каталоге Firebird. Для сервера Firebird 1.5 и более поздних файл конфигурации называется firebird.conf. Для версии 1.0.x он называется ibconfig в Windows и-isc config в POSIX. Используйте текстовый редактор для открытия и редактирования этого


Исходные файлы и выполняемые файлы

Из книги автора

Исходные файлы и выполняемые файлы Наша замечательная программа, несмотря на свою лаконичность и простоту, для компьютера является совершенно бессмысленным набором символов, так как он "не понимает" директив типа #include или printf. Он понимает только специальный язык,


12.3. Проверка конфигурации

Из книги автора

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


Держать себя в руках: рабочая память, сдерживание и гибкость

Из книги автора

Держать себя в руках: рабочая память, сдерживание и гибкость Каждому знакома ситуация: лето, по дороге попадается кафе-мороженое, с вывески прохожим улыбается прохладный персик. Вы не испытываете ни голода, ни жажды, но вкусное мороженое — да, именно это сейчас и нужно! С