0

ASP.NET MVC ではController、アクションから何かを返すためにクラスに使用できるメソッドのセットは限られています。

HttpNotFoundResult HttpNotFound()エラーの方法はありますが、他の方法はありません。

中身はHttpNotFound()401 Unauthorizedまたは403 Forbiddenまたはのような他のエラー コードに対して同様のメソッドを作成するにはどうすればよい406 Not Acceptableですか?

4

1 に答える 1

2

次のように実装されます。

public class HttpNotFoundResult : HttpStatusCodeResult
{
    public HttpNotFoundResult() : this(null)
    {
    }

    public HttpNotFoundResult(string statusDescription) : 
           base(HttpStatusCode.NotFound, statusDescription)
    {
    }
}

実行されると、HttpStatusCodeResultは単純にステータス コードとステータスの説明を に設定しますcontext.HttpContext.ResponseHttpStatusCodeResultクラスから継承して、独自の結果を作成できます。例えば

public class HttpUnauthorizedResult : HttpStatusCodeResult
{
    public HttpUnauthorizedResult() : this(null)
    {
    }

    public HttpUnauthorizedResult(string statusDescription) : 
           base(HttpStatusCode.Unauthorized, statusDescription)
    {
    }
}
于 2013-01-09T01:09:52.180 に答える