Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > IgnoreSectionHandler


Автор: Medved 9.9.2005, 00:06
Как прочесть значения из конфиг файла приложения, если моя секция в конфиге объявлена как IgnoreSectionHandler?

Автор: -ser- 9.9.2005, 03:56
если я правильно понимаю, то
либо поместить параметры в секцию <appSettings> (только для чтения) и читать стандартным способом,
либо создавать XML Schema и читать ее через ReadXml. в этом случае можно также и записывать и тогда в общем необязательно использовать именно этот файл.

Автор: Medved 9.9.2005, 06:09
Цитата
либо поместить параметры в секцию <appSettings> (только для чтения) и читать стандартным способом

Не случайно в названии темы указан класс IgnoreSectionHandler. В том то и дело, что стандартным способом не нужно.

Цитата
либо создавать XML Schema и читать ее через ReadXml. в этом случае можно также и записывать и тогда в общем необязательно использовать именно этот файл.

Это и ежику понятно, хотелось бы увидеть хоть пример.

Автор: mr.DUDA 9.9.2005, 10:42
Цитата(Pegas @ 9.9.2005, 06:09)
хотелось бы увидит хоть пример.

вот пример:

AppConfig
Код
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="testSection" type="System.Configuration.IgnoreSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowLocation="false" />
  </configSections>
  <testSection>
    <some>Bla-bla-bla</some>
    <etc>Text</etc>
  </testSection>
</configuration>


Test.cs
Код

using System;
using System.Xml;

namespace ConsoleApplication2
{
    class Test
    {
        static void Main(string[] args)
        {
            XmlDocument xmldoc = new XmlDocument();
            xmldoc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
            XmlElement configuration = xmldoc["configuration"];
            XmlElement testSection = configuration["testSection"];
            
            foreach(XmlElement some in testSection)
                Console.WriteLine("Name=" + some.Name + " Value=" + some.InnerText);
        }
    }
}


Автор: Medved 9.9.2005, 14:17
Thanks!

Вот эту строчку никак не мог найтиsmile
Код

xmldoc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);

Автор: mr.DUDA 9.9.2005, 16:01
Цитата(Pegas @ 9.9.2005, 14:17)
Вот эту строчку никак не мог найти

бывает - ищешь какую-нибудь информацию, хоть весь мсдн перерой, а пока кто-нибудь не подскажет, то не наткнёшься smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)