Mam ogólny filtr działania i chcę uzyskać bieżący model w metodzie OnActionExecuting
. Moja obecna implementacja wygląda następująco:Jak uzyskać bieżący model w filtrze działania
public class CommandFilter<T> : IActionFilter where T : class, new()
{
public void OnActionExecuting(ActionExecutingContext actionContext)
{
var model= (T)actionContext.ActionArguments["model"];
}
}
Działa dobrze, jeśli moje wszystkie nazwy modeli są takie same. Ale chcę używać nazw modeli differnet.
Jak rozwiązać ten problem?
Edit
public class HomeController : Controller
{
[ServiceFilter(typeof(CommandActionFilter<CreateInput>))]
public IActionResult Create([FromBody]CreateInput model)
{
return new OkResult();
}
}
http://stackoverflow.com/questions/872796/asp-net-mvc-accessing-view-model-from-a-custom -action-filter – user2184057
@ user2184057 jest to model widoku, a nie model żądania – Set