Entity framework 在以下场景中,L2E连接的最佳方法是什么?

Entity framework 在以下场景中,L2E连接的最佳方法是什么?,entity-framework,linq-to-entities,Entity Framework,Linq To Entities,以下是两个表格: 国家>>国家ID,国家名称 城市>>城市ID、城市名称、国家ID 我正在使用存储库模式从数据库生成实体集。(例如,repository.GetQuery()) 现在我想写这样一个查询,当我获取City时,它也会在结果集中为相应的国家生成一个populates。所以我可以直接访问它,比如city.Country.CountryName 我知道我可以通过连接两个实体集来实现这一点,但这在性能上肯定是昂贵的。也许,.Include可以帮助我实现这一目标。有什么想法/例子可以实现这一点

以下是两个表格:

国家>>国家ID,国家名称 城市>>城市ID、城市名称、国家ID

我正在使用存储库模式从数据库生成实体集。(例如,
repository.GetQuery()

现在我想写这样一个查询,当我获取City时,它也会在结果集中为相应的国家生成一个populates。所以我可以直接访问它,比如city.Country.CountryName


我知道我可以通过连接两个实体集来实现这一点,但这在性能上肯定是昂贵的。也许,.Include可以帮助我实现这一目标。有什么想法/例子可以实现这一点吗?

因为您使用的是实体框架,所以我假设您的城市对象具有指向相应国家/地区记录的导航属性Country

因此,除非您特别希望使用延迟加载,否则您需要使用Include。好消息是,您可以在存储库内部执行include,而不必在外部编写代码。我们可以找到一个这样的例子

让我知道这是否有效