我正在尝试验证网页上至少有一个输入中包含数据。该页面名为CustomValidator.cshtml
,我已经编写了验证此服务器端和客户端的代码。我遇到的问题是,当我单击submit
按钮时,它添加了一个变量?Length=19
,因此,当单击Submit时,URL从http://localhost:63199/Home/CustomValidator
变为http://localhost:63199/Home/CustomValidator?Length=19
。>
我的问题是我如何配置RouteConfig.cs以解决此添加的变量,并且在单击“提交”按钮时不会导致404错误?
这是RouteConfig.cs:
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Validator",
url: "{controller}/CustomValidator/{Length}",
defaults: new { controller = "Home", action = "CustomValidator"}
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
}
使用上述Validator
路由的配置,当单击“提交”按钮时,URL更改为*http://localhost:63199/Home/CustomValidator/19
由于我是ASP.NET的新手,所以在此先感谢您的帮助。
答案 0 :(得分:0)
routes.MapRoute(
name: "Validator",
url: "{controller}/CustomValidator/{Length}",
defaults: new { controller = "Home", action = "CustomValidator", Length= UrlParameter.Optional}
);
将同时为/Home/CustomValidator/19
和/Home/CustomValidator?Length=19