.Include()会影响查询的结果数

问题描述 投票:0回答:1

我有一个非常简单的查询返回Order,但是当我用许多IncludesThenInclude执行相同的查询时,查询返回0结果而不是1

var a = _context
        .Orders
        .FirstOrDefault(x => x.Id == OrderId);

var b = _context
        .Orders
        .OrdersFullInclude()
        .FirstOrDefault(x => x.Id == OrderId);

哪里OrdersFullInclude() =

public static IQueryable<Order> OrdersFullInclude(this IQueryable<Order> input)
{
    return  input
           .Include(x => x.StatusesHistory)
           .Include(x => x.File)
           .Include(x => x.SomeData)
           .ThenInclude(x => x.SomeDeeperLevel)
           .Include(x => x.Company)
           .Include(x => x.Customer)
           .Include(x => x.Insurance)
           .ThenInclude(x => x.InsuranceSomething); 
}

为什么?

c# entity-framework asp.net-core linq-to-sql entity-framework-core
1个回答
1
投票

通过调用Include,您将结果与其他一些表一起加入,并且看起来并非所有连接表都在第一个结果集中的记录中有相关记录,因此它没有返回任何结果。

© www.soinside.com 2019 - 2024. All rights reserved.