У меня есть переопределение для контроллера, который проверяет, существуют ли определенные данные сеанса.Эти данные необходимы для правильной работы репозитория, поэтому, если он не существует, то после проверки пользователь должен выйти из системы.
protected override void Initialize(System.Web.Routing.RequestContext requestContext)
{
base.Initialize(requestContext);
if (Session["CompanyID"] != null)
{
repo.CompanyID = (long)Session["CompanyID"];
}
else
{
RedirectToAction("LogOff", "Account");
}
}
Мой код выглядит следующим образом, но даже когда RedirectToAction вызывается контроллеромпо-прежнему открывается действие по умолчанию, и пользователь не вышел из системы.Можете ли вы порекомендовать, как решить эту проблему?
Я использую эти данные сеанса таким образом, потому что это первое место, к которому я могу добраться, я знаю и здесь я могу проверить, существуют ли эти конкретные данные,Это записывается, когда пользователь входит в систему.
Эти данные являются частью пользователя в базе данных.Я сделал пользовательское членство и поставщик ролей.Есть ли способ как-то добавить эти данные к «Пользователю» типа MembershipUser, чтобы они могли быть доступны в конструкторе, например, username пользователя?