Создание раздела с помощью NameValueFileSectionHandler
Обработчик раздела NameValueFileSectionHandler облегчает создание собственного раздела, аналогичного разделу <appSettings>. Этот раздел хранит несколько пар ключ/значение, которые затем могут быть прочитаны через объект NameValueCollection. Первым шагом является объявление раздела, включая имя раздела и обработчика раздела, используемого для интерпретации раздела, в разделе <configSections> файла machine.config сервера или файла web.config приложения.
<configSections> <section name="myAppSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> </configSections>
Это объявление позволяет создать в своем настроечном файле раздел с именем <myAppSettings>, обрабатываемый обработчиком раздела NameValueFileSectionHandler. Следующий шаг состоит в добавлении этого раздела в настроечный файл.
<myAppSettings> <add key="Key1" value="Our first value" /> <add key="Key2" value="Our Second value" /> </myAppSettings>
Данный раздел интерпретируется NameValueFileSectionHandler и будет доступен вашим приложениям через объект ConfigurationSettings. Ниже приведен код для доступа к ключам, добавленным в раздел.
C#
NameValueCollection nvcMyAppSettings = ConfigurationSettings.GetConfig("myAppSettings"); Response.Write(nvcMyAppSettings["Key1"].ToString()); Response.Write(nvcMyAppSettings["Key2"].ToString());
VB.NET
Dim nvcMyAppSettings As NameValueCollection = _ ConfigurationSettings.GetConfig("myAppSettings") Response.Write(nvcMyAppSettings("Key1").ToString()) Response.Write(nvcMyAppSettings("Key2").ToString())
Метод GetConfig объекта ConfigurationSettings создает коллекцию NameValueCollection, содержащую все пары ключ/значение, добавленные в раздел. Вы должны передать в метод GetConfig имя своего раздела. Если он является подразделом или частью группы разделов, перед именем раздела нужно указать группу разделов или родительский раздел. Например, если раздел находится в группе разделов Microsoft, при вызове метода GetConfig следует указать "Microsoft/MyAppSettings".
Обработчик раздела SingleTagSectionHandler используется аналогично двум предыдущим обработчикам разделов, за исключением того, что все пары ключ/значение сохраняются не в отдельных элементах <add>, а в одном элементе раздела. Первым шагом является объявление раздела в разделе <configSections>.
<configSections> <section name="myAppSettingsSingle" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> </configSections>
Раздел <myAppSettingsSingle> будет обрабатываться SingleTagSectionHandler. Затем можно добавить в свой настроечный файл раздел, который содержит несколько пар ключ/значение.
<myAppSettingsSingle Key1="Our first value" Key2="Our Second value" />
Вы можете получить доступ к этим парам ключ/значение из своего приложения с помощью метода, который используется для доступа к разделу, обрабатываемому DictionarySectionHandler. Ниже приведен код для доступа к этим значениям из приложения.
C#
HashTable htMyAppSettings = (HashTable) ConfigurationSettings.GetConfig("myAppSettingsSingle"); Response.Write(htMyAppSettings["Key1"].ToString()); Response.Write(htMyAppSettings["Key2"].ToString());
VB.NET
Dim htMyAppSettings As HashTable = _ CType(ConfigurationSettings.GetConfig("myAppSettingsSingle"), _ HashTable) Response.Write(htMyAppSettings("Key1").ToString()) Response.Write(htMyAppSettings("Key2").ToString())
Данный обработчик похож на остальные обработчики, но для добавления значений не используется элемент <add>. Это уменьшает размер разделов настроек и упрощает чтение.
Обработчик раздела NameValueFileSectionHandler облегчает создание собственного раздела, аналогичного разделу <appSettings>. Этот раздел хранит несколько пар ключ/значение, которые затем могут быть прочитаны через объект NameValueCollection. Первым шагом является объявление раздела, включая имя раздела и обработчика раздела, используемого для интерпретации раздела, в разделе <configSections> файла machine.config сервера или файла web.config приложения.
<configSections> <section name="myAppSettings" type="System.Configuration.NameValueFileSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> </configSections>
Это объявление позволяет создать в своем настроечном файле раздел с именем <myAppSettings>, обрабатываемый обработчиком раздела NameValueFileSectionHandler. Следующий шаг состоит в добавлении этого раздела в настроечный файл.
<myAppSettings> <add key="Key1" value="Our first value" /> <add key="Key2" value="Our Second value" /> </myAppSettings>
Данный раздел интерпретируется NameValueFileSectionHandler и будет доступен вашим приложениям через объект ConfigurationSettings. Ниже приведен код для доступа к ключам, добавленным в раздел.
C#
NameValueCollection nvcMyAppSettings = ConfigurationSettings.GetConfig("myAppSettings"); Response.Write(nvcMyAppSettings["Key1"].ToString()); Response.Write(nvcMyAppSettings["Key2"].ToString());
VB.NET
Dim nvcMyAppSettings As NameValueCollection = _ ConfigurationSettings.GetConfig("myAppSettings") Response.Write(nvcMyAppSettings("Key1").ToString()) Response.Write(nvcMyAppSettings("Key2").ToString())
Метод GetConfig объекта ConfigurationSettings создает коллекцию NameValueCollection, содержащую все пары ключ/значение, добавленные в раздел. Вы должны передать в метод GetConfig имя своего раздела. Если он является подразделом или частью группы разделов, перед именем раздела нужно указать группу разделов или родительский раздел. Например, если раздел находится в группе разделов Microsoft, при вызове метода GetConfig следует указать "Microsoft/MyAppSettings".