我正在尝试在ASP.NET MVC RC2中构建一个HtmlHelper扩展。这段代码在预览版5中运行良好,但在RC2中不再有用,我试图理解为什么。这是代码:
public static string EmptyDropDownList(this HtmlHelper htmlHelper, string name, object htmlAttributes)
{
return htmlHelper.DropDownList(name, new SelectList(new string[0]), htmlAttributes);
}
问题是我无法从扩展方法中访问htmlHelper上的所有方法。因此,找不到htmlHelper.DropDownList。
有什么建议吗?
答案 0 :(得分:11)
您需要包含System.Web.Mvc.Html命名空间,因为大多数HtmlHelper方法实际上都是在该命名空间中的类中定义的扩展。
您可以在www.codeplex.com/aspnet找到RC1(也可能是RC2源代码)。单击源代码选项卡,然后向下导航到MVC源代码树。
答案 1 :(得分:0)
两种选择:
一个。添加到“使用”页面,因此使用剃刀视图页面(mvc 3和mvc 4) 例如
@using UrWeb.Helpers
OR
湾添加到内部web.config名称空间部分 例如
<add namespace="UrWeb.Helpers"/>