Я пытаюсь переключить наши ссылки на T4MVC, и у меня возникает небольшая проблема с параметрами, которые не являются частью сигнатуры действия. У нас есть маршрут, который выглядит примерно так:
http://www.mydomain.com/{fooKey}/{barKey}/{barID}
==> приводит к BarController.Details(barID).
fooKey и barKey добавляются к ссылкам только в целях SEO. (поскольку bar является дочерним элементом foo, и мы хотим представить эту иерархию в URL-адресе)
До сих пор мы использовали
<% =Html.ActionLink(bar.Name, "Details", "Bar", new {barID = bar.ID, fooKey = bar.Foo.Key, barKey = bar.Key}, null)%>
И это привело бы нас к BarController.Details(barID), сохраняя при этом fooKey и barKey в URL-адресе.
Теперь, когда мы начали с T4MVC, мы попытались изменить его на
<% =Html.ActionLink(bar.Name, MVC.Bar.Details(bar.ID), null)%>
Поскольку barKey и fooKey не являются частью подписи действия Details, они больше не отображаются в URL-адресе.
Есть ли способ обойти это без добавления этих параметров в сигнатуру действия?