ASP.Net MVC控制器
问题描述:
我在我的MVC Web应用程序中定义了MVC控制器。我在控制器中定义了5个不同的动作名称。所有的行动都在做不同的事情。ASP.Net MVC控制器
我想要做的是在global.asax中定义一个常见的MVC路由,而不是5个不同的MVC路由。我在global.asax文件中定义了一条这样的路线。
routes.MapRoute(
"Action1/1", // Route name
"xyz/check-data1", // URL with parameters
new { controller = "CheckDate", action = "Check1" } // Parameter defaults
);
我需要5条不同的路线,因为这5条不同的路线将在我的网页中被称为5个超链接。
我不想复制和粘贴上面的路线,并创建5个不同的路线。 例如我可以像下面这样定义一条路线。
routes.MapRoute(
"Action2/2", // Route name
"xyz/check-data2", // URL with parameters
new { controller = "CheckDate", action = "Check2" } // Parameter defaults
);
请在此建议我。
答
的典型模式是,以规范自己的行为,使他们能够与默认路由的工作:
/{Controller}/{Action}/{id?}
如果你不打算使用标准动作,那么你别无选择,只能到指定的路线单独和手动。
但是,有一个名为AttributeRouting的nuget软件包,可让您使用属性在操作本身上指定路由。如果你要处理很多自定义路线,这通常更容易,更流畅。