2

私は .net web api でいくつかの Restful API に取り組んでいます。私が取り組んでいるすべての API コントローラーは、基本 API コントローラーから継承しています。Initialize 関数にはいくつかのロジックがあります。

protected override void Initialize(HttpControllerContext controllerContext)
{
// some logic
}

新しい製品の要求があり、いくつかの基準に応じて、初期化関数でクライアントに応答を返したいと考えています。例えば

 protected override void Initialize(HttpControllerContext controllerContext)
{
// some logic
   controllerContext.Request.CreateErrorResponse(HttpStatusCode.Unauthorized, "error");

}

ただし、既に応答を返しても、.net パイプラインはまだ進行しているようです。

その関数内で応答を返し、実行を停止する方法はありますか? または、既存のコードを別の方法でリファクタリングする必要がありますか?

4

3 に答える 3

-1

Application.CompleteRequest() を使用すると、EndRequest イベントが発生します。

于 2013-10-20T09:33:45.597 に答える