Я создал метод расширения Html в классе Helper, но не могу заставить его работать. Я реализовал это, как показано на разных уроках.
Мой статический класс MenuItemHelper:
public static string MenuItem(this HtmlHelper helper, string linkText, string actionName, string controllerName)
{
var currentControllerName = (string)helper.ViewContext.RouteData.Values["controller"];
var currentActionName = (string)helper.ViewContext.RouteData.Values["action"];
var sb = new StringBuilder();
if (currentControllerName.Equals(controllerName, StringComparison.CurrentCultureIgnoreCase) && currentActionName.Equals(actionName, StringComparison.CurrentCultureIgnoreCase))
sb.Append("<li class=\"selected\">");
else
sb.Append("<li>");
sb.Append(helper.ActionLink(linkText, actionName, controllerName));
sb.Append("</li>");
return sb.ToString();
}
импорт пространства имен
<%@ Import Namespace="MYAPP.Web.App.Helpers" %>
Реализация на моей master.page
<%= Html.MenuItem("TEST LINK", "About", "Site") %>
Я получаю сообщение об ошибке:
Метод не найден.
EDIT:
Похоже, проблема в названии приложения.
папка называется MYAPP-MVC.Web, но в классах она переводится в MYAPP_MVC.Web
Я только что попробовал его на новом приложении, и оно работает