次のようなカスタム フィルターを使用して、コンテンツ タイプを検証しています。
public override void OnActionExecuting(HttpActionContext httpActionContext)
{
List<String> errors = new List<String>();
// a
if (httpActionContext.Request.Content.Headers.ContentType.MediaType == "application/json")
{
}
else
{
errors.Add("Invalid content type.");
}
// more checks
}
上記のコードは正常に動作していますが、検証ではリクエストの http 動詞をチェックする必要があります。これは、put または post のコンテンツ タイプのみを検証する必要があるためです。カスタム フィルターを httpget アクションから削除したくないのは、内部にさらにチェックがあるためです。また、フィルターを 2 つの部分に分割したくないため、フィルター内の http 動詞をチェックする必要がありますが、削除することもできます。方法がわかりません。
任意のヒント?