C# 更改路由值会中断表单提交…MVC3

C# 更改路由值会中断表单提交…MVC3,c#,asp.net-mvc-3,C#,Asp.net Mvc 3,我在global.asax中更改了路由,因此如果手动键入查询字符串,该值将保留在地址栏中: routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Account", action = "LogOn", id = UrlParameter.Option

我在global.asax中更改了路由,因此如果手动键入查询字符串,该值将保留在地址栏中:

 routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Account", action = "LogOn", id = UrlParameter.Optional}   
        );
        routes.MapRoute(
            "OrderId", // Route name
            "{controller}/{action}/{db}", // URL with parameters
            new { controller = "Account", action = "LogOn", db = UrlParameter.Optional}                   );
我这里有2个值,因为id参数在整个应用程序中都使用,如:

        public ActionResult AddNote(string id)
db参数用于用户希望连接到其他数据库的情况,并通过查询字符串输入,如果出现错误(如错误的用户名/密码),则会保留在url中

       thesite.com/?db=somedb
该应用程序的工作方式与以前相同,除了没有指定操作的表单,如下所示:

     @using (Html.BeginForm())
此表单将作为

 <form method="post" action="/UserTasks/NewOrder/Index">
Home/Index操作只是重定向到Account/LogOn,所以我取消了Home/Index调用,直接转到主页上的Account/LogOn


我需要在global.asax中进行哪些更改,以便所有未显式输入操作的表单都将触发ASP.Net MVC以前为其提供的默认操作?谢谢

您是否正在使用应用程序中的区域?不,我没有…我如何使用这些区域?只是想了解您的问题。。您为/UserTasks/NewOrder/Index设置了什么路由?另外,您在访问哪个特定路径时遇到困难?什么是
UserTasks
?你申请的名字是什么?
              routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Home", action = "Index", id= UrlParameter.Optional }
        );