ASP.net MVC наилучшая практика для загрузки значений по умолчанию из базы данных глобально один раз - PullRequest
0 голосов
/ 27 ноября 2018

Я работаю над ASP.net MVC впервые, у меня есть таблица page, где я создаю динамические страницы, и есть другие таблицы, такие как contents, где у меня есть другое динамическое содержимое, например виджеты

top menu и footer находятся на всех страницах веб-сайта, поэтому для каждого действия мне нужно получить страницы из базы данных и заполнить top menu динамическими страницами и сделать еще один запрос, чтобы загрузить еще несколько страниц с where condition дляпоказать некоторые ссылки на страницу в нижнем колонтитуле.
, чтобы отобразить эту ссылку, я должен выполнить эти запросы для каждого действия.чтобы оптимизировать и очистить код, я помещаю эти запросы во все конструкторы контроллеров, но все же я не доволен, я хочу запросить его один глобально на уровне приложения и получить доступ куда угодно.

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

1 Ответ

0 голосов
/ 27 ноября 2018

Самое простое место - это иметь несколько статических членов в классе, предпочтительно не в контроллере, и подавать результаты запроса при первом вызове.Вы даже можете объявить их как Ленивый .Использование этого метода будет означать, что они будут пополняться при каждом повторном использовании пула приложений.Вы также можете поместить их в объекты, которые вводят зависимости, и управлять их временем жизни на более детальном уровне.Существуют также сторонние решения для кэширования, но я думаю, что это излишне.

...