最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

c# - HierarchyID: Get all descendants for a list of parents using LINQ-to-SQL - Stack Overflow

programmeradmin1浏览0评论

I need to find all descendants for a given list of parents. The query (in plain SQL) was easy enough, but I can't translate it into LINQ-to-SQL.

SQL Query:

select child.id from GlobalDocumentClassification child 
  inner join GlobalDocumentClassification parent 
on child.HierarchyId.IsDescendantOf(parent.HierarchyId) = CAST(1 AS bit) and 
  parent.Id in ('5bb9450f-3778-411d-bbf2-5a5775c70310')

Here my (flawed) LINQ query:

var entityIds =
    from child in Context.GlobalDocumentClassification
    join parent in Context.GlobalDocumentClassification
        on child.HierarchyId.IsDescendantOf(child.HierarchyId) equals true
    where EF.Constant(documentClassificationIds).Contains(parent.Id)
        select child.Id;

The IDE complains about the use of parent - I believe this is related to how the LINQ-to-SQL queries need to be structured

发布评论

评论列表(0)

  1. 暂无评论