簡體   English   中英

如何讓所有孩子在親子關系中達到特定深度?

[英]How to get all children to specific depth in parent child relationship?

我們首先使用 EF 代碼,並有一個具有以下結構的模型。 需要將項目獲取到一定深度。 例如,獲取所有作業類型的深度為 2 將獲取所有具有空父項及其子項的作業類型。

namespace My.Models
{
    public class JobType
    {
        public long Id { get; set; }

        [Required]
        public string Text { get; set; }

        public long? ParentJobTypeId { get; set; }

        public virtual JobType ParentJobType { get; set; }

        public virtual Collection<JobType> JobTypes { get; set; }
    }
}

您可以生成包含字符串並使用Include

var query = ctx.JobType.Where(x => x.ParentJobTypeId == null);

if (count > 0)
{
    var include = string.Join(".", Enumerable.Range(1, count).Select(x => "JobTypes"));
    query = query.Include(include);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM