の別のリストであるリストを平らにこの操作を実行するLinQクエリを把握することができました。は、その特性の一つは、私は以下のクラスを持っているオブジェクト
2
A
答えて
2
あなたは、メインのオブジェクトのシーケンスを平らにするSelectManyを使用する必要があります。
プロジェクトにIEnumerableをシーケンスの各要素を1つのシーケンスに 結果のシーケンスを平坦化します。
は、だから、FlatList
オブジェクトのシーケンスに各メインオブジェクトを投影した後、1つのFlatList
シーケンスに結果のシーケンスを平坦化
var flatList = mainList.SelectMany(m =>
m.Owners.Select(o =>
new FlatList {
Id = m.Id,
Name = m.Name,
OwnerId = o.Id,
OwnerName = o.Name
})).ToList()
2
List<Main> mainList = ...
var flatList = (
from main in mainList
from owner in main.Owners
select new FlatList {
Id = main.Id, Name = main.Name,
OwnerId = owner.Id, OwnerName = owner.Name
}).ToList();
1
あなたが行うことができますLINQを使用して(舞台裏の秘密のループ):
from m in mainList
from o in m.Owners
select new FlatList
{
Id = m.Id,
Name = m.Name,
OwnerId = o.OwnerId ,
OwnerName = o.OwnerName
};
関連する問題
- 1. は、私はそれらの一つ一つには、以下のクラスのいくつかのインスタンスを持つ3つのリストを持っているのC#
- 2. は、私は以下のクラスを持っているHashSetの
- 3. は、私は以下のクラスを持っているリスト
- 4. Unityは、私は以下のクラスを持っているリポジトリ
- 5. は、私は以下のクラスを持っている
- 6. は、私は以下のクラスを持っているCCW順
- 7. EF7/LINQのは、ネストされたオブジェクトを持つクエリは、私は以下のクラスを持っている例外
- 8. は、私は以下の目的を持っているオブジェクト
- 9. カスタムオブジェクトは完全に私は以下のクラスを持つJSONオブジェクト
- 10. 私は以下のレコードを持つテーブルを持っている唯一のOracle
- 11. Node.jsのは、私はそれで特別なIDを持つ以下のURLを持っているID
- 12. カスタムイテレータは、私は以下のクラスを持つ一時オブジェクト(遅延ロード)
- 13. 私は以下のクラスを持っているJavaの
- 14. 私は以下のクラスを持っている
- 15. C++、私は以下のクラスを持っている木
- 16. 私は以下のクラスを持っている
- 17. 私は以下のクラスを持っている一般的な比較可能
- 18. は、私は、次の特性を持っている特性
- 19. は、私は以下のクラスを持って反射
- 20. は、私は、以下の情報を持つデシベルを持っているのpython
- 21. は、私は、以下の基本クラスを持つ派生クラス
- 22. は、私は以下の持っている私のソースリスト
- 23. 私は以下のクラスを持ってLINQの
- 24. は、どのように私は以下のクラスを持っているシーケンス
- 25. の制御は、私はクラスで以下の機能を持っているコンテンツ
- 26. の移行は、私は以下のクラスを持っているCSS3
- 27. は、どのように私は以下のクラスを持っている
- 28. パターンは、私は以下のようにポリシーのクラスを持っている
- 29. は、どのように私は以下のクラスを持っているナビゲーションプロパティ
- 30. RSpecのは、私は以下のクラス構造を持っている