【发布时间】:2011-01-17 21:51:12
【问题描述】:
我的 ASP.NET MVC 项目中有一些显示模板。现在我可以像这样使用它们:
@Model MyModel
@Html.DisplayFor(x => x.PropertyName)
我想做的只是循环遍历对象图并动态地执行此操作:
@Model MyModel
foreach(var property in MyModel.GetType().GetProperties()){
@Html.DisplayFor(/*Any way to do this?*/)
}
有什么想法吗?
【问题讨论】:
-
嗯...我有一个文本示例,但问题是 DisplayFor 方法也是通用的...这很棘手...
-
它将沿线
var param = Expression.Parameter(MyModel.GetType()); foreach(var property in MyModel.GetType().GetProperties()) { @Html.DisplayFor(Expression.Lambda(Expression.Property( param, property), param)); }- 但中间有一些MakeGenericMethod。这种痛苦真的值得吗? -
没有。 :) 谢谢...如果我们有更多的显示模板要运行,但我宁愿手工做...记住 - 现在这会让我很烦...
标签: c# asp.net-mvc asp.net-mvc-2 reflection