私はカタログ タイプのプログラムに取り組んでおり、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
誰かがこの制限または可能な回避策を知っていれば、私はそれを感謝します.