Для моих действий, которые будут взаимодействовать с учетной записью пользователя, я хотел бы создать объект "TheUser" в дополнение к добавлению этого объекта в "ViewData [" TheUser "]", как только какое-либо действие на моем контроллере будет выполнено называется.
Если пользователь вошел в систему, он будет извлекать информацию о пользователе из базы данных, в противном случае объект "TheUser" будет просто нулевым.
Я попытался получить доступ к «User.Identity.Name» в конструкторе контроллера, но он не был создан до вызова какого-либо действия.
Я просматривал пользовательские фильтры авторизации, но они не позволили бы мне создать объект "TheUser" и сохранить его в ViewData.
Это краткий фрагмент того, чего я хотел бы достичь:
[Authorize]
public class HomeController : Controller
{
User TheUser;
public HomeController()
{
TheUser = User.Identity.IsAuthenticated ? UserRepository.GetUser(User.Identity.Name) : null;
ViewData["TheUser"] = TheUser;
}
}