【发布时间】:2011-11-28 22:47:52
【问题描述】:
我正在 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());
}
}
}
无论如何,当我尝试在表单上使用它时,它不会出现在智能感知中:
例如:<li>@Html.PartyDetailsField(Model.IdentifierConfiguration)</li>
但是,当将相同的代码放在 HtmlHelperExtensions 文件中时,它可以正常工作。我什至看不出类定义有什么不同。
在这种情况下有什么可以照亮的,或者我是否必须将它留在 HtmlHelperExtensions 类中。
【问题讨论】:
标签: c# asp.net-mvc-3 extension-methods html-helper