nas*_*ski 0 c# razor asp.net-mvc-3
我试图创建一个动态类型扩展HtmlHelper,但我收到并错误.例如,如果我试试这个:
public static string DropDownWithAdder<T>(this HtmlHelper helper)
{
return "Test Worked";
}
Run Code Online (Sandbox Code Playgroud)
这在视图中:
@Html.DropDownWithAdder<Code>()
Run Code Online (Sandbox Code Playgroud)
我收到了错误
CS1061:'System.Web.Mvc.HtmlHelper'不包含'DropDownWithAdder'的定义,并且没有扩展方法'DropDownWithAdder'接受类型'System.Web.Mvc.HtmlHelper'的第一个参数可以找到(你错过了吗?使用指令或程序集引用?)
但是,如果我只是删除<T>它就可以了.我的问题是你可以在Html扩展方法中使用泛型类型吗?
扩展方法需要将Html辅助对象作为其第一个参数
public static string DropDownWithAdder<T>(this HtmlHelper helper)
{
return "Test Worked";
}
Run Code Online (Sandbox Code Playgroud)
编辑:
您还需要用括号括起调用以防止Razor将<解释为html标记的开头:
@(Html.DropDownWithAdder())