3

次の方法でエンティティ リストを取得します。

var riscregions = db.RiscEntranceDetails.OrderBy(r => r.RiscEntranceID).Include(r => r.RiscEntrance).Include(r => r.RiscRegion);

ただし、次のような、より深く関連するエンティティ属性に到達する必要があります。

<td>@item.RiscEntrance.ID</td>
<td>@item.RiscEntrance.Personnel.Name</td>
<td>@item.RiscEntrance.EntranceDateTime</td>
<td>@item.RiscEntrance.ShiftWork.ShiftGroup.TextID</td>

どうすればそれらに到達できますか? linq、または拡張機能やヘルパーなどの他の回避策を含む提案は大歓迎です。

4

2 に答える 2

2

あなたはこれを行うことができます:

var riscregions = db.RiscEntranceDetails
                .OrderBy(r => r.RiscEntranceID)
                .Include(r => r.RiscEntrance)
                .Include(r => r.RiscEntrance.Personnel)
                .Include(r => r.RiscEntrance.ShiftWork.ShiftGroup)

コレクションの子を選択する必要がある場合にのみ、式でSelect使用する必要があります。Include

于 2013-01-19T23:51:35.193 に答える
1

http://msdn.microsoft.com/en-us/data/jj574232.aspx

複数のレベルを積極的にロードすることを参照してください。ラムダで使用でき.Select()ます。.Include()

于 2013-01-19T23:40:45.893 に答える