Мне нужно портировать приложение Windows Forms (конфигуратор продукта) меньшего размера на приложение asp.net, которое будет использоваться на веб-сайте крупной компании, спрос должен быть умеренным, поскольку он предназначен для специализированной линейки продуктов.
У меня нет доступа к базе данных, и использование XML является требованием их веб-разработчиков.
В файлах xml хранится примерно 30 различных продуктов с примерно 300 различными возможными конфигурациями, а также связанные вопросы / ответы, которые приводят к рекомендации по продукту. Также некоторые производственные варианты. Приложение доступно на 6 языках.
Как бы вы решили слой доступа к данным, если бы могли называть его так? Я думал о чтении / десериализации xml-файлов в их объекты и сохранении их в кеше asp.net, если их там уже нет, а затем читал из кеша при последующих запросах. Но это означало бы, что все объекты живут в памяти весь день и ночь.
Это даже необходимо, или разумно, с точки зрения производительности? Как я уже говорил, приложение не такое большое, XML-файлы не такие большие. Могу ли я просто создать некоторый класс Repository, который читает файлы xml при каждом запросе объекта (т. Е. «Сведения о продукте» или «Следующий вопрос») и возвращает его таким образом, а также снижает потребление памяти?