2017-05-08 4 views
1

パーツリストを含むASP.NET MVC Webアプリケーションを作成しています。このため、私はクラス階層を作成しました。私が持っている問題は、Html.EditorForModel()を使用すると、継承された基本クラスのプロパティが最後に表示されたときに表示されるということです。ここで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 = #)]属性を指定しようとしたが、それは何も変更しませんでした。各パートのEditorTemplateを作成することの外で、これをどうやって行うのですか?

答えて

2

使用順序を設定するにはDisplay属性:

[Display(Order = 2)] 
public int Id { get; set; } 

[Display(Order = 1)] 
public string Name { get; set; } 
関連する問題