У меня есть куча поддержки Cases
и Users
. Каждый Case
назначается на User
с уникальным идентификатором. Моя модель данных представляет это с AssignedUser
ссылкой на идентификатор пользователя. Это легко хранить и извлекать, но не удобно отображать.
Когда я хочу отобразить список Cases
, свойство пользователя должно быть отформатировано как имя пользователя пользователя, а не его ID, но эта информация недоступна внутри корпуса. Трудно получить имена пользователей в хранилище дел, поскольку оно предоставляется отдельным хранилищем пользователей.
В настоящее время я делаю это, создавая шаблон DisplayFor(...)
для свойства AssignedUser
дела и создавая словарь пользователей в HttpContext в OnActionExecuting, на который затем ссылается шаблон и транслирует имя пользователя. Это работает довольно хорошо, но, следуя этому подходу, я заполняю HttpContext при каждом запросе несколькими словарями (филиалами, продуктами и т. Д.), Которые не всегда необходимы.
Инстинктивно, я должен передать пользовательские данные в модель представления, но это означает, что они должны быть восстановлены должным образом. Какова лучшая практика в ASP.NET-MVC без выполнения ненужных запросов и заполнения HttpContext бесполезными данными?