是否有可在url映射中使用的最大参数数量?

时间:2013-01-04 14:56:52

标签: razor asp.net-mvc-4 url-routing

我正在开发目录类型程序,需要在浏览和搜索过程中跟踪面包屑,同时创建SEO友好URL。我的类别可以达到5级深,很少见,但可能会发生。我想我遇到了一个限制,找不到任何可以用来映射多少参数的东西。

我的地图如下所示:

routes.MapRout(
     "CategoryPath",
     "products/{cat1}/{cat2}/{cat3}/{cat4}/{cat5}",
     new { controller = "CategoryPath",
          action = "Index", 
          cat1 = UrlParameter.Optional,
          cat2 = UrlParameter.Optional,
          cat3 = UrlParameter.Optional,
          cat4 = UrlParameter.Optional,
          cat5 = UrlParameter.Optional
     });

我的链接是这样创建的:

@Url.Action("Index", "CategoryPath", new { cat1 = row.Title, })
@Url.Action("Index", "CategoryPath", new { cat1 = row.Title, cat2 = subrow.Title })

因此,当呈现链接时(仅使用cat4),它正确呈现为

 ~/products/pruductCategory1 

和  分别为~/products/productCategory1/productCategory2

但是,一旦我添加了cat5,就会以这种方式呈现

~/CategoryPath?cat1=productCategory1 

~/products/productCategory1/productCategory2

如果有人知道这个限制或可能的解决方法,我会很感激。

0 个答案:

没有答案