ASP.NETWebAPIプロジェクトがあります。[HttpGet]
リフレクションを使用して、アクションメソッドを装飾するHttp動詞(以下の例)属性を取得するにはどうすればよいですか?
[HttpGet]
public ActionResult Index(int id) { ... }
コントローラに上記のアクションメソッドがあると仮定します。Index
これまでのところ、リフレクションを使用することで、アクションメソッドのMethodInfoオブジェクトを取得できました。これは、という変数に格納されています。methodInfo
次を使用してhttp動詞を取得しようとしましたが、機能しませんでした-nullを返します:
var httpVerb = methodInfo.GetCustomAttributes(typeof (AcceptVerbsAttribute), false).Cast<AcceptVerbsAttribute>().SingleOrDefault();
私が気づいたこと:
上記の私の例は、私が取り組んでいるASP.NETWebAPIプロジェクトからのものです。
[HttpGet]
System.Web.Http.HttpGetAttributeのようです
ただし、通常のASP.NET MVCプロジェクトで[HttpGet]
は、これはSystem.Web.Mvc.HttpGetAttributeです。