public static MvcHtmlString CheckBoxListFor<TModel, TValue>(this HtmlHelper<TModel> html, Expression<Func<TModel, TValue>> expression) where TValue : bool
且bool
无效。 Boolean
也无效。我可以用什么? TValue必须是bool
?
编辑:我正在为mvc3编写HTMLHELPER,稍后将其用作html.CheckBoxFor(expression)
,因此TValue
必须是通用的
答案 0 :(得分:0)
如果TValue
必须是bool
,那么它就是通用的。
public static MvcHtmlString CheckBoxListFor<TModel>(this HtmlHelper<TModel> html, Expression<Func<TModel, bool>> expression)
答案 1 :(得分:0)
然后只需删除TValue
类型参数,并将其替换为bool
:
public static MvcHtmlString CheckBoxListFor<TModel>(this HtmlHelper<TModel> html, Expression<Func<TModel, bool>> expression)
答案 2 :(得分:0)
从您的评论中,我认为您需要两种不同的重载:
public static MvcHtmlString CheckBoxListFor<TModel>(this HtmlHelper<TModel> html,
Expression<Func<TModel, bool>> predicateExpression)
和
public static MvcHtmlString CheckBoxListFor<TModel, TValue>(this HtmlHelper<TModel> html,
Expression<Func<TModel, TValue>> expression)
在内部,您可以共享内部实现并添加所需内容。