2

一部のデータをロードするときに複数の子を選択しようとしていますが、インクルードの周りに条件ステートメントを配置したいと考えています。

現時点では、1 つの特定の祖父母オブジェクトを操作するさまざまな方法でさまざまな選択を行っていますが、それらを 1 つの選択に入れたいと考えています。

ShapeResults(this IQueryable<SpecificObject>, bool includeParent, bool includeChildren)

メソッドと私のすべてのメソッドは、条件/フィルターでそれを指しています。

私がやっていることとうまくいきます:

var query = context.Grandparent.Select(i => new GrandparentObject
{
    GrandparentProp1 = i.GrandparentProp1 ,
    Parents = i.Parents.Select(j => new ParentObject
    {
        ParentProp1 = j.ParentProp1,
        Children = j.Children.Select(k => new ChildObject
        {
            ChildProp1 = k.ChildProp1,
        }
    }
}

本質的にやりたいこと

var query = context.Grandparent.Select(i => new GrandparentObject
{
    GrandparentProp1 = i.GrandparentProp1,
--> if (IncludeParents)
    Parents = i.Parents.Select(j => new ParentObject
    {
        ParentProp1 = j.ParentProp1,
    --> if (IncludeParentsChildren)
        Children = j.Children.Select(k => new ChildObject
        {
            ChildProp1 = k.ChildProp1,
        }
    }
}

前もって感謝します!

4

2 に答える 2