我正在编写一个包含零件清单的ASP.NET MVC Web应用程序。因此我创建了一个类层次结构。我遇到的问题是,当我希望首先显示继承基类时,使用Html.EditorForModel()
显示继承基类的属性。
以下是我正在做的一个例子:
Part.cs
public class Part
{
[Key]
[HiddenInput(DiplayValue = false)]
public Nullable<int> ID { get; set; }
[Required]
public int Price { get; set; }
[Required]
public string Brand { get; set; }
}
Screw.cs
public class Screw : Part
{
public int Length { get; set; }
public int Width { get; set; }
}
然后,当我在我的视图中调用Html.EditorForModel
时,这是字段显示的顺序:
但我希望它按此顺序显示:
我已尝试指定[Column(Order = #)]
属性,但这并未改变任何内容。除了为每个Part创建EditorTemplate之外,我该怎么做呢?
答案 0 :(得分:2)
使用Display
属性设置顺序:
[Display(Order = 2)]
public int Id { get; set; }
[Display(Order = 1)]
public string Name { get; set; }