0

我尝试使用 Razor Helper 为我执行一些 if 语句。我向它传递了一个包含某些规则的列表,并根据该规则创建了一个标签和输入文本字段。

我遇到的问题是我无法使用 Lambda 表达式作为参数。它不会识别 TModel 部分。

辅助方法如下:

@helper CreateCheckbox(Expression<Func<TModel, bool>> expression, object htmlAttributes, List<Rule> ruleList)
{    

}

我得到的错误是:找不到命名空间“TModel”的类型。

4

1 回答 1

0

您必须为 TModel 选择一种类型。因为您的视图没有任何泛型类型参数,所以它无法确定应该用什么类型代替 TModel。你必须给它一个实际的类型才能使用。

如果这不是一个选项,您可能只是为 HtmlHelper 类创建一个扩展方法,并使其成为一个泛型方法。有关如何执行此操作的示例,请参阅此问题。

于 2012-07-25T20:38:26.593 回答