public class TheFilter : ActionFilterAttribute
{
public override void OnActionExecuted(ActionExecutedContext filterContext)
{
var controllerName = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName;
}
}
public class NotesController : BaseController
{
[TheFilter]
[HttpPost]
public ActionResult Edit(EditViewModel viewModel)
{
viewModel.Note.Modified = DateTime.Now;
viewModel.Note.ModifiedBy = User.Identity.Name;
var noteTable = StorageHelper.GetTable<Note>(viewModel.PageMeta.DataSourceID);
noteTable.AddOrUpdate(viewModel.Note);
return Home();
}
}
當我調試在回國()和步然後我繞過行動過濾器和直接進入主頁()方法。
我是否正確地聲明瞭操作篩選器?
我完全按照上面的方式重新創建場景,並且我的動作過濾器被擊中。我意識到這些信息沒有解決你的問題,但我認爲你應該知道你的代碼是正確的。其他某種形式的配置可能會導致您遇到的問題。 –
謝謝Nathan。我應該用名稱TheFilterAttribute還是名稱TheFilter來聲明類?我認爲這可能是一個問題,並試圖。然而同樣的結果。它沒有進入OnActionExecuted –
剛剛嘗試過,沒有在我的動作過濾器的末尾的'屬性';這似乎並不重要。 –