gpt4 book ai didi

asp.net-mvc - 如何为所有 url 运行自定义路由,除了 MVC3 中的一个特殊 url

转载 作者:行者123 更新时间:2023-12-02 22:18:43 24 4
gpt4 key购买 nike

我已经为一些 URL 做了一些 URL 路由。

routes.MapRoute(
"ProductDetails",
"Product/{name}/{*other}",
new { controller = "Product", action = "Details" }
);

以上代码会将所有 /Product/{name} 类型的 url 路由到 /Product/Details/{parameter}。它工作正常,现在我希望如果我输入 url /Product/List,则必须通过默认路由进行处理。

而且我不想再为 List 创建一条路线。

请指教。

最佳答案

name 参数添加约束(不等于 List):

routes.MapRoute(
name: "ProductDetails",
url: "Product/{name}/{*other}",
defaults: new { controller = "Product", action = "Details" },
constraints: new { name = "^(?!List$).*$" }
);

此路由将不匹配 /Product/List url

UPDATE 如果您还想排除其他名称:^(?!(List|Foo|Bar)$​​).*$

关于asp.net-mvc - 如何为所有 url 运行自定义路由,除了 MVC3 中的一个特殊 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14056725/

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