Примеры пользовательских конфигурационных файлов? - PullRequest
2 голосов
/ 24 июня 2011

На горизонте моего (C # 4.0) проекта - введение функции пользовательской конфигурации, в которой мои коллеги должны получить возможность конфигурировать наше программное обеспечение или предварительную версию, чтобы он мог выполнять свои обязанности любым способомнужно.Каждый прогон (это будут длительные симуляции) будет иметь свой собственный файл конфигурации.

В основном, они захотят определить «продукты», довольно сложные звери, содержащие параметры времени выполнения, IOC-стиль информации (списки классов вычислений, требуемые в стиле Strategy * ) и многое другое.Значения могут быть числами (целыми числами и числами с плавающей точкой), строками, датами и их списками.

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

Опции, на которые я смотрел, включают в порядке убывания (моя оценка) тяжесть синтаксиса:

  1. XML
  2. YAML
  3. JSON
  4. a DomainSpecific Language ?
  5. Некоторые текстовые обозначения для приложений

Я ищу примеры более или менее похожих вещей: форматы файлов, обсуждения плюсов и минусов с технической и / или пользовательской точек зрения.

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

РЕДАКТИРОВАТЬ / ОБНОВИТЬ: Я не особенно обеспокоен простотой реализации с технической точки зрения:Я ищу что-то, что мои (очень умные, но не технически ориентированные) пользователи лучше всего смогут использовать, чтобы минимизировать сложность написания, что может быть довольно сложной конфигурацией.

Может быть, "конфигурация" - это неправильный выбор слова - что если мы назовем его "файлом определения моделирования" и посчитаем, что каждый пользователь создаст множество из них со временем?

Ответы [ 2 ]

0 голосов
/ 24 июня 2011

В C # проще всего использовать встроенный класс System.Configuration, сначала вы должны добавить файл конфигурации с помощью Visual Studio, а затем отредактировать его атрибуты. Вот Как

0 голосов
/ 24 июня 2011

Если все это можно описать обычным, ориентированным на атрибуты способом, похоже, что XML будет соответствовать вашим потребностям.C # обладает фантастическими функциями обработки XML, включая встроенные сериализаторы и LINQ, которые могут сэкономить массу времени на реализацию кода.Кроме того, создание пользовательского интерфейса на основе форм из схемы очень просто.

Я бы предложил сесть и создать псевдошхему, чтобы посмотреть, будет ли это обрабатывать ваши сценарии использования, чтобы помочь решить, будет ли этот подход работатьyou.

Для примера, взгляните на одну из многих систем плагинов, которые управляются XML.Первый, который я бы порекомендовал, это Eclipse.

...