ASP.NET MVCでは、カスタム属性がチェック/適用されるシーケンスをどのように定義するのですか?
-
03-07-2019 - |
質問
現在、ActionFilterAttributeから派生したカスタム属性を使用する可能性を調査しています。いくつかの属性でいくつかのことを達成したいと思います。問題は、ランダムな順序ではなく、属性の1つが最初に作用するようにすることです。
例:
public class Feature1Attrubute : ActionFilterAttribute
{
/* ... */
}
public class Feature2Attrubute : ActionFilterAttribute
{
/* ... */
}
public class MyController : Controller
{
[Feature1, Feature2]
public ActionResult MyAction ()
{
/* ... */
}
}
属性がメソッド装飾で言及された順序で適用されるようになっていますか?
そうでない場合、[カスタム]属性のグループに特定のシーケンスを定義する方法はありますか?
解決
基本クラス ActionFilterAttribute
には、 Order
というプロパティがあります。それがあなたが探しているものです。
public class MyController : Controller
{
[Feature1(Order = 1), Feature2(Order = 2)]
public ActionResult MyAction ()
{
/* ... */
}
}
所属していません StackOverflow