Использование Response.End в действии MVC3
Я пытаюсь сделать что-то вроде этой статьи предлагает на моем сайте MVC3. Однако я не уверен, что смогу использовать Response.End в своем действии.
У меня вопрос, как я могу вернуть код состояния 401 из моего действия, если HttpContext.User == null?
public ActionResult WinUserLogOn(string returnUrl) {
var userName = string.Empty;
if (HttpContext.User == null) {
//This will force the client's browser to provide credentials
Response.StatusCode = 401;
Response.StatusDescription = "Unauthorized";
Response.End();
return View("LogOn"); //<== ????
}
else {
//Attempt to Log this user against Forms Authentication
}
1 ответ
Решение
Это должно делать то, что вы хотите:
return new HttpUnauthorizedResult();
который вернет HTTP 401 в браузер. Смотрите документы.