2017-06-23 3 views
1

下記のように、私のActionFilterで、ActionExecutingContext.ActionDescriptorのActionNameとMethodInfoを取得しようとします。 しかし、コンパイラは、ActionDescriptorにはActionNameとMethodInfoの定義が含まれていないと言います。しかし、アプリケーションをデバッグすると、ActionDescriptorにこれらのプロパティが含まれていることがわかります(下の図を参照)。 私はASP .NETコアを使用していますが、どこに問題があるのか​​わかりません。ActionExecutingContext ActionDescriptorにActionNameとMethodInfoが含まれていません

enter image description here enter image description here

答えて

2

そのクラスはあなたが必要とする特性を有しているので、あなたはControllerActionDesriptorにキャストする必要があります。

var descriptor = context.ActionDescriptor as ControllerActionDescriptor; 
var actionName = descriptor.ActionName; 
var methodInfo = descriptor.MethodInfo; 
+0

thx、今すぐ動作します。 –

関連する問題