使用带有2个或更多动态参数的asp.net进行URL路由

时间:2014-04-18 07:31:30

标签: c# asp.net url-routing

我在asp.net webform中的网址路由有问题 我定义:

routes.MapPageRoute("Parameters", "{CenterShop}/ ", "~/Default.aspx");

在Global.asax的RegisterRoutes()函数中,它运行良好 但我需要这样的事情:

routes.MapPageRoute("Parameters", "{CenterShop}/{Shop}/{Lot}/", "~/Default.aspx");

在url(shop和Lot)中有更多动态参数,如果我有这样的url,它会起作用:

http://website/LondenCenterShop/LockShop/xperia Z1

但是如果其中一个参数为null我在我的页面上有错误,当我有url时:

http://website.com/LondenCenterShop

我想显示这个CenterShop中的商店列表,但我不能使用这个网址,请他帮我解决问题。
感谢。

1 个答案:

答案 0 :(得分:0)

我通过添加两个路由来解决它,所以我的registerroutes()函数是:

routes.MapPageRoute("Parameters", "{CenterShop}/{Shop}/{Lot}", "~/Default.aspx");
routes.MapPageRoute("Parameters1", "{CenterShop}/{Shop}/", "~/Default.aspx");
routes.MapPageRoute("Parameters2", "{CenterShop}/", "~/Default.aspx");

它运作良好!