Ответ 1
Цель состоит в том, чтобы облегчить результаты поиска View или PartialView для действий входа и регистрации.
private ActionResult ContextDependentView()
{
string actionName = ControllerContext.RouteData.GetRequiredString("action");
if (Request.QueryString["content"] != null)
{
ViewBag.FormAction = "Json" + actionName;
return PartialView();
}
else
{
ViewBag.FormAction = actionName;
return View();
}
}
Как и другие вещи в MVC, это делается по соглашению... соглашение здесь, когда Request.QueryString
содержит ?content=xxxx
, он добавляет "Json" к имени действия, наполняет его свойством ViewBag и возвращает частичное версии представления. Например:
Запрос /Account/Login?content=test
будет разрешен к ViewBag.FormAction = "JsonLogin";
, а затем возвращен частичный.
В запросе для /Account/Login
нет строки запроса контента, поэтому ее действие формы остается ViewBag.FormAction = "Login";