Asp.net mvc 3 Url路由-无限Url
我使用asp.net mvc3,我想写一条没有终点的路线。。 我的意思是:Asp.net mvc 3 Url路由-无限Url,asp.net-mvc-3,asp.net-routing,Asp.net Mvc 3,Asp.net Routing,我使用asp.net mvc3,我想写一条没有终点的路线。。 我的意思是: www.site.com/Cameras/{id}={string}/{id}={string}/{id}={string}/{id}={string}..... 其中,id表示筛选器id,字符串表示该筛选器的值。。 我有很多类型的过滤器,在未来我希望能够添加更多的过滤器,而不需要任何依赖性。。 这种路线应该是什么样子?如何开始处理这些参数?您需要做的是编写一个catchall路由,然后将其解释为: routes.Ma
www.site.com/Cameras/{id}={string}/{id}={string}/{id}={string}/{id}={string}.....
其中,id表示筛选器id,字符串表示该筛选器的值。。
我有很多类型的过滤器,在未来我希望能够添加更多的过滤器,而不需要任何依赖性。。
这种路线应该是什么样子?如何开始处理这些参数?您需要做的是编写一个catchall路由,然后将其解释为:
routes.MapRoute("Cameras", "cameras/{*url}",
new { controller = "Cameras", action = "Index" }
);
public ActionResult Index(string url)
{
var ids = url.split('/');
// now do what you need with the ids
}
您应该使用如下URL:
routes.MapRoute("Cameras", "cameras/{*url}",
new { controller = "Cameras", action = "Index" }
);
public ActionResult Index(string url)
{
var ids = url.split('/');
// now do what you need with the ids
}
/摄像头/id1/id2/id3/id4我不确定这个问题是否真的是这个意思,但是如果你没有id1或者你只有id6之类的东西怎么办?我自己并没有真正使用过这类东西,但我觉得如果你想简单地添加参数-也删除它们,你会想这样做…我同意这不是最好的选择,但如果你想要一个无结尾的ID列表,你可以解释它。我想你可以只制作URL类似于
/cameras/name=bob/paramX=28/
等,或者如果=
是一个特殊字符,那么就选择其他一些东西。在mvc3中使用查询字符串是不受欢迎的,还是这样做实际上是更好的任意URL方式?抱歉,如果这个问题很愚蠢,但我不使用MVC,我正试图像这样吸收有关MVC的知识:)还有其他“更聪明”的解决方案吗?