C# 实体框架核心:在Include()之后调用`Load()``

C# 实体框架核心:在Include()之后调用`Load()``,c#,entity-framework,entity-framework-core,C#,Entity Framework,Entity Framework Core,当需要急切地加载某些关系时,我注意到在EF Core(v.1.1.0)中,单独调用Include方法不会将所需的关系附加到查询,并且在处理诸如查询必须传递到视图(ASP.Net MVC Core)的情况时,延迟加载将不起作用,这会导致问题 但是,我知道在Include之后调用Load方法可以解决这个问题。另一方面,我也知道Load与ToList非常相似,因为表中的所有可用数据都将加载到内存中 关键是,我遇到过这样的情况:我必须调用Load,以便能够基于关系中可用的属性进行查询,我认为这是一个坏主

当需要急切地加载某些关系时,我注意到在EF Core(v.1.1.0)中,单独调用
Include
方法不会将所需的关系附加到查询,并且在处理诸如查询必须传递到视图(ASP.Net MVC Core)的情况时,延迟加载将不起作用,这会导致问题

但是,我知道在
Include
之后调用
Load
方法可以解决这个问题。另一方面,我也知道
Load
ToList
非常相似,因为表中的所有可用数据都将加载到内存中

关键是,我遇到过这样的情况:我必须调用
Load
,以便能够基于关系中可用的属性进行查询,我认为这是一个坏主意,使用
连接将更合适

有两个问题:

1-与使用
Join
来附加导航或关系属性相比,调用
Load
真的是个坏主意吗


2.
包含
的意义是什么?如果它本身不包含内容

您确实需要展示代码示例来说明您的观点。如果
.Include()
未包含导航属性,则您的映射可能有问题。请发布您的映射和查询。
Load
ToList
不同。Load只获取相关数据,而不是整个表。