Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
1 / 1 / 2
Регистрация: 19.12.2013
Сообщений: 25

Считывание параметров из конфигурационного файла c#

11.02.2014, 22:37. Показов 1983. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
гугл и яндекс , msdn ничего полезного не нашел (
1 Что это такое?!
2 как и зачем их использовать!
3 Книги или стати если есть можете посоветовать!
Спасибо!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.02.2014, 22:37
Ответы с готовыми решениями:

Считывание пользоватлеских параметров из файла
Всем привет! В моем коде очень много одинаковых полей. Я хочу вынести их в отдельный txt файл. (просто они должны быть изменяемы...

Создание конфигурационного файла
Добрый день, форумчане! Такая проблема: надо создать свой конфигурационный файл для задания в нем имени сервера и номера порта для...

Шифрование строки для конфигурационного файла
Хотел бы в параметрах конфигурационного файла строковые значения некоторых параметров указывать в зашифрованном виде. Для этого мне нужно...

1
30 / 29 / 18
Регистрация: 19.12.2012
Сообщений: 144
Записей в блоге: 1
11.02.2014, 22:50
Лучший ответ Сообщение было отмечено Fly_ как решение

Решение

В общем, оттуда достаточно удобно с помощью стандартных средств считывать какие-либо настройки (к примеру, параметры подключения к серверу БД), понадобится тебе неймспейс System.Configuration (сначала подключи одноименную сборку).

Я для себя наметил простой способ считывания : создать хэндлер и читать как XML (просто и доходчиво). Вот пример

1. Хэндлер :

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class GeneratorConfigHandler : IConfigurationSectionHandler
    {
        public object Create(object parent, object configContext, XmlNode section)
        {
            List<Hashtable> settingsList = new List<Hashtable>();  //создали список хэштейблов
            XmlNode node = section;     //корневой узел 
            int i = 0;     //счетчик
            foreach (XmlNode child in node.ChildNodes)        //пока у узла есть дочерние узлы
            {
                settingsList.Add(new Hashtable());            //добавили хэштейбл
                foreach (XmlAttribute attr in child.Attributes)
                {
                    settingsList[i].Add(attr.Name, attr.Value);   //в новый хэштейбл записали пару name-value из конфига
                }
                i++;   //увеличили счетчик
            }
            return settingsList;   
        }
    }
2. Конфиг :

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <sectionGroup name="GeneratorConfig" >
      <section name="GeneratorSettings" type="ReadAndGenerate.GeneratorConfigHandler, ClassLibrary1" />
      <section name="GeneratorTimers" type="ReadAndGenerate.GeneratorConfigHandler, ClassLibrary1" />
    </sectionGroup>
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
  <GeneratorConfig>
    <GeneratorSettings>
      <Item name="TimeUnit" value="TimeUnits.Milliseconds" />
      <Item name="ReadTimeout" value="1300" />
      <Item name="default" value ="1000" />
    </GeneratorSettings>
    <GeneratorTimers>
      <Timer timeout="1000" />
      <Timer timeout="1800" />
      <Timer default="1000" />
    </GeneratorTimers>
  </GeneratorConfig>
</configuration>
По поводу секций : name - имя секции, ReadAndGenerate - неймпейс где лежит хэндлер, ClassLibrary1 - имя сборки (в моем случае это отдельная dll)

3. Получение данных:

C#
1
timersList = (List<Hashtable>)ConfigurationSettings.GetConfig("GeneratorConfig/GeneratorTimers");
P.S. Ну еще System.Xml. Надеюсь, поможет
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.02.2014, 22:50
Помогаю со студенческими работами здесь

Можно ли читать раздел конфигурационного файла не описывая его
Подскажите, пожалуйста, можно ли как-то читать раздел конфигурационного файла не описывая его? Например: &lt;?xml...

Считывание из файла списка процессов, их запуск и передача им параметров
Написать две программы: 1) Программа TASK1, которая считывает из файла TASK.TXT имена процессов и запускает их с соответствующими...

Размер конфигурационного файла MD
Резко вырос размер конфигурационного файла, примерно в 10 раз. Добавлен отчет и изменен документ. При открытии блокнотом, появилось много...

Шифрование конфигурационного файла
Всем привет. Возник вопрос. Есть сервер, есть конфигурационный файл, лежащий рядом с сервером, который парсится им. Вопрос следующий. Есть...

backup конфигурационного файла
не могу создать backup конфигурационного файла. Cisco 871 и ПК под Win XP. роутер подключен до ПК через патч-корд до ЛАН-порта. на ПК...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Данные берутся из. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru