私のASP.NET MVCプロジェクトにはいくつかの表示テンプレートがあります。今、私はそうのようにそれらを使用することができます:私がやりたいのは何Refelctionを使用して式<Func <TModel、TValue >>を作成します
@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()); myModel.GetType()のvarプロパティ、GetProperties()){ @ Html.DisplayFor(Expression.Lambda(Expression.Property(param、property)、param)); } ' - でも、中にはいくつかのMakeGenericMethodがあります。このレベルの痛みは本当に価値がありますか? –
NO。 :)ありがとう...私たちは、より多くの表示テンプレートがあっても、私はむしろ手でやってみたいと思っています...これは今私にバグを起こすでしょう... – iwayneo