Работа с файлами конфигурации приложения

В данной статье будет разобраны основы работы с конфигурационными файлами, секциями конфигурации и созданием своих конфигурационных разделов. Перед прочтением рекомендуется ознакомиться с языком разметки xml, индексаторами, свойствами, приведением типов и всем C# в целом.
Статья
15 10.6K
35
ScorpioT1000, который из yml? под таким разрешением несколько форматов
38
Эргалон, да, комментарии в жсон не предусмотрены, т.к. он изначально был для передачи данных по сети. Зато они есть в yml, как ранее уже описывали. yml лучше подходит для конфигурации, но он всё ещё мало поддерживается старпёрскими библиотеками.
В самой статье ни слова не было о геймдеве
Про геймдев я сказал, т.к. это широкая стенд-элон индустрия, в вебе и сетевых аппликухах xml уже давно пережиток прошлого, за исключением некоторых протоколов (хотя нет, привет андроиду и жаве с их вьюхами)
31
ScorpioT1000, А теперь прокомментируй каждую строку в джейсоне своем
Это, конечно, классно просить сделать то, для чего формат не предназначен.
и покажи редактор, который грамотно выделит синтаксис)
Notepad++ более чем достаточно
Может он и подойдет, для более маленьких конфигураций, а если у тебя конфигурация на 1000+ строк? Как ты будешь потом разгребаться, что есть где?
Ровно также как и в xml, только в xml больше тегов стоит.
писать отдельную библиотеку чисто ради единоразового чтения параметров как минимум глупо
Ну да, Newtonsoft подключить к проекту нельзя. Нужно что-то своё навелосипедить :)
29
тк большинство конфигураций для расширений (логгеры, фреймворки итд) инжектятся именно в xml формате
щто, оно же через тот же конфигуратор грузится.
29
ScorpioT1000:
  • В самой статье ни слова не было о геймдеве, а ключевое слово под статьей unity3d чисто ради кликбейта
  • Сейчас речь идет конкретно о платформе .net, где xml - штатный язык разметки, и писать отдельную библиотеку чисто ради единоразового чтения параметров как минимум глупо (это без учета того, что конфигурационными файлами пользуются зачастую заказчики, и они могут по физиономии настучать за такие вот распространенные конфиги)
В тех проектах, за которые мне чаще всего не платят, я обычно самописными конфигами пользуюсь
6
ScorpioT1000, А теперь прокомментируй каждую строку в джейсоне своем и покажи редактор, который грамотно выделит синтаксис)
Может он и подойдет, для более маленьких конфигураций, а если у тебя конфигурация на 1000+ строк? Как ты будешь потом разгребаться, что есть где?
27
не знаю что за yml, знаю yaml.
для сложных типов данных как раз не xml а yaml, т.к. это больше чем разметка, есть поддержка алиасов специально для сериализации ссылочных типов
38
Msey, а в геймдеве принято не читать документацию?
29
ScorpioT1000:
Ох уж этот xml) там на жсон ещё не торопятся в геймдеве переходить?
На самом деле это проблемный вопрос, тк большинство конфигураций для расширений (логгеры, фреймворки итд) инжектятся именно в xml формате, и чтобы убедиться, что они читают конфиги в нескольких форматах, нужно, либо читать документацию, либо в случае ее отсутсвия чекать рефлектором.
По крайней мере в дотнете