Asp.net mvc 3 Html.LabelFor中的动态Lambda
我正在尝试使用razor引擎中的html帮助程序为动态属性创建标签。视图模型不是强类型的。我对lambda表达式的了解不是很强,我不确定如何生成适合这种情况的动态表达式Asp.net mvc 3 Html.LabelFor中的动态Lambda,asp.net-mvc-3,razor,lambda,Asp.net Mvc 3,Razor,Lambda,我正在尝试使用razor引擎中的html帮助程序为动态属性创建标签。视图模型不是强类型的。我对lambda表达式的了解不是很强,我不确定如何生成适合这种情况的动态表达式 public class someModel<TEntity> where TEntity : class { public TEntity Entity { get; set; } } 抛出错误的表达式树可能不包含动态操作 我研究了动态表达式树的制作,但不确定这是过度的还是必要的。如何使用字符串访
public class someModel<TEntity> where TEntity : class
{
public TEntity Entity { get; set; }
}
抛出错误的表达式树可能不包含动态操作
我研究了动态表达式树的制作,但不确定这是过度的还是必要的。如何使用字符串访问实体的属性
实体可以是许多不同类型的类。这些类具有完全定义的数据注释,例如[Display(Name=“Some Name”)]
,我尝试使用LabelFor的原因是为了访问这些数据注释。这是不可能的。不能对动态值使用lambda表达式或强类型帮助程序。您必须使用这些帮助程序的弱类型版本:
@model dynamic
@{
string property = "FirstName";
}
@Html.Label("property")
是的,一旦你停止使用强类型视图模型,很多事情和习惯将不得不改变。我明白了,我考虑过用javascript来做其余的事情,因为从技术上讲,所有的数据都在那里,它只是缺少强类型模型的良好支持。我只是尝试为crud视图创建这个通用视图,而不是为任何需要更多基础知识的东西。我厌倦了在代码上有极其相似的观点。
@model dynamic
@{
string property = "FirstName";
}
@Html.Label("property")