我正在使用视图模型通过 jquery 不显眼的验证和标准属性装饰(MVC 3.0)将数据传递给我的 Razor 视图。我的视图模型看起来像这样(忽略汇总名称):
public class MyViewModel
{
public MyViewItem Item { get; set; }
public MyViewItem Item2 { get; set; }
}
public class MyViewItem
{
public int Value { get; set; }
public CustomEnum MyEnum { get; set; }
}
我想要做的是用不同的范围属性装饰 MyViewModel 上的 Item 和 Item2 值。但是,当我使用Html的EditorFor扩展时,这些不会出现,因为它们不在使用的特定 Value 属性上。
IE
public class MyViewModel
{
[Range(0,100)] // will actually be applied on the Item.Value property
public MyViewItem Item { get; set; }
[Range(50,60)] // will actually be applied on the Item.Value property
public MyViewItem Item2 { get; set; }
}
无论如何我可以通过自定义属性或其他形式来实现这一点,即自定义数据绑定、自定义属性等