У меня есть приложение в asp.net mvc
У меня есть контроллер с именем LoginController, у которого есть два метода действия
- Индекс
- loginCheck (Имя пользователя, Пароль)
Оба возвращают ActionResult
Индекс возврата действия просмотра, который имеет форму входа.
// Код
public class LoginController : Controller
{
public ActionResult Index()
{
return view();
}
}
Метод действия loginCheck вызывается с помощью ajax-вызова, когда пользователь нажимает кнопку входа в систему в форме входа.
С помощью loginCheck я проверяю имя пользователя и пароль, если это правильно, я создаю сеанс, используя
Session["User"] = Username
А return RedirectToAction("Index", "Configuration");
// Вот код
public class LoginController : Controller
{
[HttpPost]
public ActionResult loginCheck(string UserName, string Password)
{
Getting user Id and password
Checking
If(correct)
Then
Session["User"] = Username;
return RefirectToAction("Index", "Cobfiguration");
Else
return RedirectToAction("Index");
}
}
После указанной выше строки управление переходит к Index
методу действия контроллера конфигурации.
Он проверяет сессию, если существует, затем выполняет вещи и возвращает представление метода действия конфигурации Index с данными в объекте класса модели конфигурации, а если сессия не существует, просто возвращает действие индекса входа в систему, которое в основном загружает форму входа.
if (Session["User"] != null)
{
//do stuff
return view(modelObject);
}
else
{
return RedirectToAction("Index", "Login");
}
Итак, проблема в том, что controller
переходит к методу index контроллера конфигурации, код выполняет все и даже return view(modelObject);
, но представление индекса конфигурации не отображается. Я не понимаю почему.
Что-нибудь может сказать кто-нибудь?