У меня есть рабочий Ajax.RouteLink, я хочу добавить фрагмент. Я не могу понять правильный синтаксис.Как использовать фрагмент в Ajax.RouteLink?
Работа маршрута без фрагмента:
return Ajax.RouteLink(
linkText,
routeName,
new { caseNo = caseNo, controller = controllerName, option = contentOption },
new AjaxOptions() { UpdateTargetId = "caseContent", HttpMethod = "Post", OnBegin = onBegin, OnSuccess = onSuccess },
new { Class = cssClass + (contentOption != null && contentOption == contentView ? " active" : "") });
Ошибка компилятора RouteLink с фрагментом:
return Ajax.RouteLink(
linkText: linkText,
routeName: routeName,
protocol: null,
hostName: null,
fragment: fragment,
routeValues: new { caseNo = caseNo, controller = controllerName, option = contentOption },
ajaxOptions: new AjaxOptions() { UpdateTargetId = "caseContent", HttpMethod = "Post", OnBegin = onBegin, OnSuccess = onSuccess },
htmlAttributes: new { Class = cssClass + (contentOption != null && contentOption == contentView ? " active" : "") }
);
Ошибки с routeValues и htmlAttributes. Невозможно преобразовать из анонимного типа.
Я пробовал:
routeValues: new System.Web.Routing.RouteValueDictionary() { caseNo = caseNo, controller = controllerName, option = contentOption }
но тогда компилятор жалуется на моей Parms маршрутизации (caseNo, контроллер, опция).
Кроме того, можно ли оставить протокол и имя узла null, так как я не меняю их?
Я считаю, что класс зарезервирован, но не класс. Независимо от того, что это не моя текущая ошибка, как работает первый звонок. – RitchieD
Ah .... Я переработал RouteValueDictionary, как описано, и его компиляции. :) Благодаря. – RitchieD
routeValues: new System.Web.Routing.RouteValueDictionary {{"caseNo", caseNo}, {"controller", controllerName}, {"option", contentOption}}, – RitchieD