ASP.NET 5中的HandleUnknownAction

Mik*_*eon 7 asp.net-core-mvc asp.net-core

什么是ASP.NET MVC 5的等价物

Controller.HandleUnknownAction() 
Run Code Online (Sandbox Code Playgroud)

在ASP.NET MVC 6/ASP.NET 5中?

Rya*_*wak 6

没有真正的等价物.

MVC5/WebAPI2中的操作选择分为三个阶段:1.运行路径2.选择控制器3.选择一个操作

在MVC6中,第2步消失了.使用路线值直接选择操作 - 您会注意到它Controller.BeginExecute也消失了.控制器现在很"瘦".

如果您希望使用直接转到相关操作的路径,则可以模拟此行为.

定义HandleUnknownAction控制器中 调用的操作 routes.MapRoute("default", "{controller=Home}/{action=Index}/{id?}"); routes.MapRoute("unknown_action", "{controller}/{*params}", defaults: new { action = "HandleUnknownAction"});