Длина = 4 происходит от попытки сериализации строкового объекта. Ваш код использует этот ActionLink
метод:
public static string ActionLink(this HtmlHelper htmlHelper, string linkText, string actionName, object routeValues, object htmlAttributes)
Это принимает string
объект «Домой» для routeValues, который MVC ищет в открытых свойствах, превращая их в значения маршрута. В случае объекта string
единственным открытым свойством является Length
, и поскольку не будет определено ни одного маршрута с параметром Length, он добавляет имя и значение свойства в качестве параметра строки запроса. Вы, вероятно, обнаружите, что если вы запустите это со страницы не на HomeController
, это выдаст ошибку об отсутствующем методе действия About
. Попробуйте использовать следующее:
Html.ActionLink("About", "About", new { controller = "Home" }, new { hidefocus = "hidefocus" })