Использование Response.End в действии MVC3 - PullRequest
0 голосов
/ 23 сентября 2011

Я пытаюсь сделать что-то вроде , которое предлагает эта статья на моем сайте 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 Ответ

5 голосов
/ 23 сентября 2011

Это должно сделать то, что вы хотите:

return new HttpUnauthorizedResult();

, который вернет HTTP 401 в браузер. См. Документы .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...