我有两条不明确的路线,都在同一个MVC区域内:
Default
{controller}/{action}/{id}
controller = "Home"
action = "Index"
id = Optional
SettingsRoute
Settings/{controller}/{action}
action = "Index"
我希望MVC默认使用Default
路由,当路由按照上面指定的顺序时,它会这样做。所以这......
Controller: WelcomeController
Action: Login
using( Html.BeginForm() ) { }
...导致此HTML
<form action="/Welcome/Login" method="post"></form>
到目前为止,非常好。
然而,当我有一个看起来像这样的锚:
<a href="Settings/AppSettings">Application settings</a>
...它被Default
路由捕获为Controller = Settings, Action = AppSettings
而不是SettingsRoute
路由。
当我对路线重新排序时SettingsRoute
出现在Default
之前,那么我的Html.BeginForm()
来电看起来像这样:<form action="Settings/Welcome/Login">
这根本不是我想要的。
有没有解决方案?
答案 0 :(得分:0)
您可以提及&lt;%:Html.ActionLink(“创建项目 - &gt;这是您要重定向的页面”,“索引”,“项目 - &gt;页面的文件夹”)%&gt; 您可以从一个页面导航到另一个页面。