Я создаю веб-сайт ASP.Net MVC. Вместо того, чтобы иметь все в одном проекте, я решил разделить Web, Model и Controller на разные проекты в одном решении, которые ссылаются друг на друга.
Ссылка выглядит следующим образом:
Веб --- [ссылки] --- > Контроллер --- [ссылки] --- > Модель
Теперь я хотел добавить 2 класса к классу HtmlHelper - они называются "IncludeScript" и "IncludeStyle". Каждый из них принимает один строковый параметр и генерирует соответственно тег script или ссылку.
Я создал класс расширений, согласно документации в Интернете, и написал два метода и скомпилировал приложение.
Теперь, когда я перехожу на страницу Public.Master(которая является моей главной главной страницей и одним из мест, где я намерен использовать эти методы), я могу ввести код, например:
<%= Html.IncludeScript("\js\jquery.js") %>
IntelliSense выбирает метод IncludeScript и показывает, что синтаксис просто отлично. Поэтому я ожидаю, что все будет работать.
Но это не так.
Все скомпилируется, но как только я запустил приложение, я получаю следующую ошибку во время выполнения из строки 14 Default.aspx.cs:
c:\\Projects\\PhoneReel\\PhoneReel.Web\\Views\\Shared\\Public.Master(11): error CS0117: 'System.Web.Mvc.HtmlHelper' does not contain a definition for 'IncludeScript'
Здесь строка кода, в которой происходит ошибка:
httpHandler.ProcessRequest(HttpContext.Current);
Любые идеи, что здесь может быть неправильным?