我想用助手扩展 MVC。假设我想构建一个扩展方法,该方法从模型中获取一个属性并呈现一个段落。
我已经写了这段代码,但它不会编译。我不知道该怎么做:
public static class PExtension
{
public static string PFor<TModel, TValue>(this HtmlHelper<TModel> html, Expression<Func<TModel, TValue>> expression) where TModel: class
{
var f = expression.Compile();
// won't compile the line below:
string propretyValue = f();
return "<p>" + propretyValue + "</p>";
}
}
作为记录,我的观点应该使用类似的东西:
@Html.PFor(m => m.Description);
谢谢。
编辑
错误描述:*Delegate 'Func' does not take 0 arguments*