Добрый день. Начал изучать ASP.NET MVC и у меня появился вопрос по поводу хелперов В книгах и на различных обучающих сайтах подход к созданию внешних хелперов довольно разнится: одни советуют создавать расширяющие классы для для класса HtmlHelper и писать его средствами .net, вот простейший пример:
public static class CustomHelperMethods
{
public static MvcHtmlString UnorderedList(this HtmlHelper helper, string[] items)
{
TagBuilder tag = new TagBuilder("ul");
foreach (var item in items)
{
TagBuilder liTag = new TagBuilder("li");
liTag.SetInnerText(item);
tag.InnerHtml += liTag.ToString();
}
return new MvcHtmlString(tag.ToString());
}
}
а другие, такие как сайт docs.microsoft пишут, что лучше использовать папку App_Code и уже там создавать хелперы с помощью обычных тегов, например:
@helper HtmlList(string[] items)
{
<ul>
@foreach (var item in items)
{
<li>@item</li>
}
</ul>
}
вот меня и интересует вопрос, как правильно создавать внешние хелперы с точки зрения профессиональной разработки и совершенства кода.