cshtml页面中动态生成URL,Url.RouteUrl()与 Url.Action()有什么区别

发布时间 2023-11-14 16:57:56作者: yinghualeihenmei

原文链接:http://cn.voidcc.com/question/p-yrfdusit-kx.html

RouteUrl根据路由名称生成url。如果您有多个参数相似的路由,则Action方法可能会选择错误的路由 - 它会根据路由定义的顺序工作。这可能发生在您的路线具有可选参数时。

如果您想确保使用某个路由网址,您需要呼叫RouteUrl传递此路由名称。路线名称是唯一的,并清楚地标识路线。

另外一个区别是Action是MVC特有的(它使用控制器和动作名称),而RouteUrl是通用的,可以在没有MVC的情况下使用(可以在WebForms中进行路由)