0

くだらないタイトルでごめんなさい。コレクションを照会し、孫のプロパティに基づいて祖父母、親、孫を返す必要があります

たとえば、以下のオブジェクトでは、条件がプランの ID と一致する場合にのみ、Quote、Rate (Parent)、および Plan (GrandChild) を取得したいと考えています。

public class Quote
{
    public int Id { get; set; }
    public string Type { get; set; }
    public string ParentType { get; set; }
    public decimal ValueMax { get; set; }
    public virtual ICollection<Rate> Rates { get; set; }
}

public class Rate
{
    public int Id { get; set; }
    public decimal ValueMax { get; set; }
    public ICollection<Plan> Plans { get; set; }
}

public class Plan

    public int Id { get; set; }
    public decimal Price { get; set; }
}
4

1 に答える 1

4

親および祖父母オブジェクトとともに、あらゆる基準を満たす計画を取得するには、次のようなことができるはずです。

// results is an anonymous type with properties Quote, Rate, Plan
var results = from q in quotes
    from r in q.Rates
    from p in r.Plans
    where p.Id < 500 /* whatever criteria */
    select new 
    {
        Quote = q,
        Rate = r,
        Plan = p
    };
于 2012-05-22T20:22:30.977 に答える