Создать HTML-файл в C # из основного компонента ASP.Net view - PullRequest
0 голосов
/ 27 января 2019

Каков наилучший способ создания и HTML-контента из компонента представления из кода C #?

Я знаю, как использовать компонент представления со страницы бритвы.Но один из моих компонентов (который представляет собой иерархическое меню) занимает слишком много времени для генерации, поскольку он использует иерархическое дерево, такое как структура данных, для генерации меню.Основные данные меню могут меняться, хотя и не так часто.

Так что я думаю о раннем генерировании HTML и кэшировании его из кода C #, у меня уже есть написанные компоненты представления.Есть ли способ выполнить это и получить HTML, чтобы я мог кэшировать его на стороне сервера?Я знаю, что есть кэш-помощник для кэширования, но я сомневаюсь, что могу использовать его по трем причинам:

  1. У меня есть две версии html для двух языков, поэтому мне нужно два разных html для кеширования
  2. Кэш должен зависеть от внешних файлов;то есть всякий раз, когда изменяются внешние файлы, срок действия кэша должен истекать
  3. Каждый раз, когда срок действия кэша истекает, мне нужно сгенерировать его снова, и это займет время (поэтому, если пользователь обращается к странице, а запрос истечения срока действия кэша может получить времяиз-за того, что меню восстанавливается)

Итак, я хочу предварительно сгенерировать HTML и кэшировать его, а веб-страница всегда берет его из кэша;и всякий раз, когда изменяются базовые файлы, он генерирует его снова, обновляя кеш, только когда генерируется новый html, поэтому пользователь не знает, сколько времени потребуется для создания нового меню.

Я могу сгенерировать html, как генерациюФайл XML на стороне сервера, но так как у меня уже есть код представления для компонента в формате бритвы, я думаю о том, чтобы получить сгенерированный HTML-код компонента представления и кэшировать его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...