创建HTMLHelper的扩展方法时出现问题“ TextBoxFor”不是“ System.Web.Mvc.HtmlHelperOf TModel”的成员

问题描述

| 我有以下已构建的扩展方法,并且已经在一个MVC3项目中使用,但是当尝试在另一个MVC3项目中使用它时,编译器(而不是视图)给出了错误
Error   1   \'TextBoxFor\' is not a member of \'System.Web.Mvc.HtmlHelper(Of TModel)\'...
Intellisense不会显示所有这些html元素快捷方式。 我确定这仅仅是因为我缺少参考书或其他内容,但却使我难以理解。
FImports System.Runtime.CompilerServices

Public Module HtmlHelperExtension

<Extension()> _
Public Function WatermarkedTextBoxFor(Of TModel,TProperty)(ByVal htmlHelper As System.Web.Mvc.HtmlHelper(Of TModel),ByVal expression As Linq.Expressions.Expression(Of Func(Of TModel,TProperty)),ByVal htmlAttributes As IDictionary(Of String,Object)) As MvcHtmlString

    Dim propertyMetaData = ModelMetadata.FromLambdaExpression(expression,htmlHelper.ViewData)

    Return htmlHelper.TextBoxFor(expression,New RouteValueDictionary(htmlAttributes) From {
                                 {\"class\",\"jq_watermark\"},{\"title\",If(Not String.IsNullOrEmpty(propertyMetaData.Watermark),propertyMetaData.Watermark,propertyMetaData.GetdisplayName())}
                             })

End Function
End Module
    

解决方法

        我需要导入System.Web.Mvc.Html命名空间     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...