Я создаю настраиваемое поле в MVC3 (C #), к которому я хотел бы получить доступ со свойством Html в представлениях. Я хочу поместить его в свой собственный класс, чтобы я мог хорошо организовать код (частные методы и т. Д.), Потому что наш текущий класс Html Extensions слишком шумный.
Вот что я ищу:
ех. @Html.CustomField...
В настоящее время у меня есть этот код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Matrix.Investigator.Models.Parties;
using Matrix.Investigator.Website.Extensions;
namespace Matrix.Investigator.Website.Fields
{
public static class DetailsField
{
public static MvcHtmlString PartyDetailsField(this HtmlHelper helper, IEnumerable<IDetailsConfiguration> configuation)
{
.
.
.
[Some Code for the field]
return MvcHtmlString.Create([CODE FOR TAG].toString());
}
}
}
В любом случае, когда я пытаюсь использовать это в форме, оно не появляется в intellisense:
например: <li>@Html.PartyDetailsField(Model.IdentifierConfiguration)</li>
Однако, если тот же код помещен в файл HtmlHelperExtensions, он работает просто отлично. Я даже не вижу разницы в определении класса.
Есть ли какой-нибудь свет, который можно осветить в этой ситуации ИЛИ мне придется оставить его в классе HtmlHelperExtensions.