0

私はビューモデルを持っています:

 public class ObjectiveVM
 {
    public DateTime DatePeriod { get; set; }
    public IList<ObList> obList { get; set; }
    public class ObList
    {
        public int ObjectiveId { get; set; }
        public int AnalystId { get; set; }
        public string Title { get; set; }
        public string Description { get; set; }
        public string AnalystName { get; set; }
        public bool Include { get; set; }
    }
 }

ビュー モデルはコントローラーに取り込まれ、必要な情報が含まれています。 ss

私の見解では、テーブル ヘッダーの DisplayName にアクセスするにはどうすればよいですか。

    @model IEnumerable<Objectives.ViewModels.ObjectiveVM>
    ...
    ...
    <th>
        @Html.DisplayNameFor(model => model.ObList.Include)
    </th>

上記を試すと、エラーが発生します:

'ObList': cannot reference a type through an expression; try 'Objectives.ViewModels.ObjectiveVM.ObList' instead

私も試しました:

@model Objectives.ViewModels.ObjectiveVM

...しかし、再びエラーを受け取りました:

 'ObList': cannot reference a type through an expression; try 'Objectives.ViewModels.ObjectiveVM.ObList' instead
4

1 に答える 1

1

ObList(大文字の O) はネストされたクラスであることに注意してください。DisplayNameForただし、操作する型の既存のインスタンスの一部のメンバーが必要です。おそらく対処しようとしているメンバーはであるため、そのプロパティobListを呼び出す方法は次のとおりです。Include

@Html.DisplayNameFor(model => model.obList[0].Include)
于 2013-08-15T07:57:08.303 に答える