4

我正在尝试在 ASP.NET MVC RC2 中构建 HtmlHelper 扩展。此代码在 Preview 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。

有什么建议么?

4

2 回答 2

11

您需要包含 System.Web.Mvc.Html 命名空间,因为大多数 HtmlHelper 方法实际上是在该命名空间中的类中定义的扩展。

您可以在www.codeplex.com/aspnet上找到 RC1(可能很快还会找到 RC2 源代码)。单击源代码选项卡并向下导航到 MVC 源代码树。

于 2009-03-16T21:35:43.093 回答
0

两种选择:

一种。使用“使用”添加到页面,因此使用 razor 视图页面(mvc 3 和 mvc 4),例如

    @using UrWeb.Helpers

或者

湾。添加到内部 web.config 命名空间部分,例如

    <add namespace="UrWeb.Helpers"/>
于 2012-02-13T23:24:49.063 回答