gpt4 book ai didi

asp.net webforms 路由 : optional parameters

转载 作者:行者123 更新时间:2023-12-03 23:15:44 26 4
gpt4 key购买 nike

我想在我的路由表中添加可选参数。
例如,我希望用户浏览这样的产品目录:
http://www.domain.com/browse/by-category/electronics/1,2,3等等

现在我已经创建了这样的路线:

            routes.MapPageRoute(
"ProductsBrowse",
"browse/{BrowseBy}/{Category}",
"~/Pages/Products/Browse.aspx"
);

然而问题是当用户输入 http://www.domain.com/browse 时,我希望他们展示一个不同的页面,他们可以在其中选择浏览方式。所以参数 {BrowseBy} 和 {Category} 不会被使用。

有没有办法解决这个问题,然后为每个场景创建单独的路线?

感谢您的时间!
亲切的问候,
标记

最佳答案

我刚刚遇到了这个问题,并且知道必须有办法做到这一点。有-
MapPageRoute有一个重载,允许您指定默认值。这是基于您的代码的示例用法:

routes.MapPageRoute(
"ProductsBrowse",
"browse/{BrowseBy}/{Category}",
"~/Pages/Products/Browse.aspx",
false,
new RouteValueDictionary { { "Category", string.Empty } }
);

所以如果用户没有指定类别,这条路线仍然会被命中。我使用两个单独的路由的问题是我在我的站点周围设置了由路由名称生成的链接,并且不能有两个具有相同名称的路由。

这是来自 MSDN 的很好的文档: here

关于asp.net webforms 路由 : optional parameters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3781092/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com