Я в основном следовал этой статье: http://develoq.net/2011/how-to-create-custom-html-helpers-for-asp-net-mvc-3-and-razor-view-engine/
Мой класс HtmlHelper находится в корневом каталоге моего проекта MVC:
using System.Web.Mvc;
namespace MvcHtmlHelpers
{
public static class HtmlHelperExtensions
{
public static MvcHtmlString Hello(this HtmlHelper helper)
{
return new MvcHtmlString("Hello!");
}
}
}
Если я ссылаюсь на это в представлении: @using MvcHtmlHelpers;
Я получаю intellisense и код представления проверяет отлично (без красного подчеркивания).
Если я не ссылаюсь на него в представлении, но ссылаюсь на него в одном или обоих файлах web.config, я не получаю intellisense, и @Html.Hello()
теперь подчеркнуто красным.
Теперь самое приятное то, что когда я бегу, он прекрасно отрисовывается, даже если на него вообще не ссылаются. В идеале я хотел бы сослаться на него один раз в web.config
и получить Intellisense в представлении, не ссылаясь на него в этом представлении.
ОБНОВЛЕНИЕ: Я думаю, что-то где-то кешируется Он НЕ рендерится, когда на него нигде нет ссылок. Мне жаль. Я все еще хотел бы получить Intellisense и подтверждение в виде.