На основании ваших комментариев к другому ответу
При тестировании с помощью модульных тестов фильтр не вызывается. Если вы хотите вызвать фильтр, то вам нужно подражать ControllerActionInvoker. Вероятно, лучше проверить сам фильтр изолированно, а затем использовать отражение, чтобы убедиться, что фильтр применяется к вашему действию с правильными атрибутами. Я предпочитаю этот механизм тестированию фильтра и действия в комбинации.
Оригинал
Конечно, вам нужен override
для вашего метода, иначе вы на самом деле не заменяете метод в базовом классе. Я бы ожидал, что компилятор пожалуется, что вам нужен new
или override
. Если вы не включите ключевое слово override
, оно будет вести себя так, как если бы вы использовали new
. Поскольку среда вызывает его как ActionFilterAttribute, это означает, что ваш метод никогда не будет вызван.
Цитата из MSDN :
Если метод в производном классе
не предшествует новый или переопределить
ключевые слова, компилятор выдаст
предупреждение и метод будет вести себя как
если новое ключевое слово присутствовало.