У меня есть небольшое веб-приложение asp.net, которое позволяет создавать проекты и задачи и применять к ним оценки, работу и т. д. Я пишу функцию экспорта, чтобы вы могли загружать их в виде файла MS Project. На самом деле это просто файл XML.
Позже я напишу функцию импорта, которая позволит вам перепланировать даты начала и окончания задачи, назначенные ресурсы и т. д., но не изменять оценки или примененные часы. Это будет обрабатываться исключительно веб-приложением.
Я пытаюсь найти лучшую архитектуру для этого. Вот пара идей, с которыми я играюсь.
- Добавьте функцию ExportToProject в мой класс Project и создайте XML на лету.
- Возьмите существующую структуру класса и добавьте атрибуты XML-сериализатора, а затем сериализуйте объект прямо в файл проекта. Тем не менее, это оставляет меня с несколькими вопросами. Что происходит со всеми другими свойствами, которые я не использую. Насколько повторно используемым будет сериализованный объект, если он не включает все данные и отформатирован для MS Project. Могу ли я, так сказать, иметь несколько сериализованных представлений?
- Вместо этого создайте новый класс XmlExport, который будет сериализован, что будет похоже на описанную выше стратегию, но с дополнительным уровнем абстракции.
- Скопируйте копию FogBugz, установите ее и переезжайте в Коста-Рику.
Спасибо, любая помощь приветствуется.