0

我正在使用 nopCommerce 2.2。我在 URL 路由中遇到问题,解释如下

我想使用以下路线。

routes.MapLocalizedRoute("Product",
                       "{region}/{bookTitle}-{isbn}",
                       new { controller = "Catalog", action = "Product" },
                       new[] { "Nop.Web.Controllers" });

因此,URL 应如下所示。 http://localhost:3129/us/303-tips-for-successful-12345

但不幸的是我收到错误


“/”应用程序中的服务器错误。

无法找到该资源。

说明:HTTP 404。您要查找的资源(或其依赖项之一)可能已被删除、名称已更改或暂时不可用。请查看以下 URL 并确保其拼写正确。

请求的 URL:/303-tips-for-successful-12345


在上面的 URL ("/303-tips-for-successful-12345") 中,第一段 "us" 缺失..

如果我在路由提供程序中使用以下路由(添加静态段“p”),

routes.MapLocalizedRoute("Product",
                       "p/{region}/{bookTitle}-{isbn}",
                       new { controller = "Catalog", action = "Product" },
                       new[] { "Nop.Web.Controllers" });

我将获得完美的 URL,没有任何错误。

http://localhost:3129/p/us/303-tips-for-successful-12345
4

1 回答 1

0

您的路线在形式上与标准的 {Controller}/{Action} 匹配。路由引擎无法知道 /us 是 Controller 还是 Region。

于 2012-03-22T12:30:13.370 回答