我的网址如下:www.example.com/video/1 category1,category2,category3/sex/hospital/doctor但是在我的url category1和category2和category3中(可能是1或者太多)可以为空/空。还有性或医院或医生也可以为空。我如何检测哪一个是空的。如果类别为空。然后,mvc将性别视为类别,将医院视为性别。我可以使用什么样的方法?Asp.net特定的Mvc路由
0
A
回答
1
MVC无法判断一个早期的URL部分是否为null,而不是它是不同的路由。
如果你的路线是:
视频/ {类别}/{子类别1}/{subcategory2}/{} subcategory3/
全部都是可选的。但是,如果类别与其他子类别不同,则当它为空时,您需要占用一个占位符。基本上,当类别为空时,您将需要另一条路线。
context.MapRoute(
"video_nocategories",
"videos/all/{subcategory1}/{subcategory2}/{subcategory3}/",
new
{
action = "Index",
controller = "Video",
categories = "",
subcategory1 = UrlParameter.Optional,
subcategory2 = UrlParameter.Optional,
subcategory3 = UrlParameter.Optional,
}
);
context.MapRoute(
"video_categories",
"videos/{categories}/{subcategory1}/{subcategory2}/{subcategory3}/",
new {
action = "Index",
controller = "Video",
subcategory1 = UrlParameter.Optional,
subcategory2 = UrlParameter.Optional,
subcategory3 = UrlParameter.Optional,
}
);
+0
感谢您的帮助。 – fuat
相关问题
- 1. asp.net MVC自定义路由
- 2. ASP.net MVC自定义路由
- 3. ASP.NET MVC自定义路由
- 4. ASP.NET MVC - 自定义路由
- 5. ASP.NET MVC路由
- 6. ASP.NET MVC路由
- 7. ASP.NET MVC路由
- 8. ASp.Net MVC路由
- 9. ASP.NET MVC路由
- 10. ASP.net MVC路由
- 11. ASP.NET MVC角路由
- 12. ASP.Net MVC 2路由
- 13. asp.net MVC和路由
- 14. ASP.NET MVC路由,Html.BeginForm
- 15. ASP.NET MVC路由器
- 16. ASP.NET MVC与路由
- 17. ASP.NET MVC 3.0路由
- 18. ASP.NET MVC URL路由
- 19. ASP.Net MVC:与路由
- 20. Asp.net MVC 5路由
- 21. ASP.NET MVC Url路由
- 22. ASP.Net MVC重定向特定路由到外部网站
- 23. ASP.NET MVC中的自定义路由
- 24. ASP.NET MVC路由的命名约定
- 25. asp.net的MVC的URL路由
- 26. ASP.NET MVC 4路由为特定的控制器动作
- 27. ASP.NET MVC路由:如何定义自定义路由
- 28. HttpModule只在特定的MVC路由
- 29. 没有MVC的ASP.NET路由?
- 30. Azure中的ASP.NET MVC路由
我建议你使用参数:http://stackoverflow.com/questions/2246481/routing-with-multiple-parameters-using-asp-net-mvc – Nick
感谢。但是我的情况与此不同。 – fuat