繁体   English   中英

实体框架包含语法

[英]Entity Framework Include syntax

我们在一些LINQ查询中使用Include。 但是想知道include方法重载只显示(字符串路径)作为参数,如果我们更改数据库表名并重新生成实体,那么include部分将抛出运行时错误。 如何在编译时捕获这些问题?

例:

Material has BusinessUnit. 
So we use repo.Material.Include("BusinessUnit")

如果我们将BusinessUnit实体名称更改为OrgUnit或其他内容,该怎么办?

使用如下方法以避免在Include方法中使用string

将以下引用添加到您的文件中

using System.Data.Entity ;

并使用

Context.BusinessUnits.Load();

要么

Context.Materials.Include(m => m.BusinessUnit).Where(...)

为了使用Include使用lambda表达式的Include ,需要using System.Data.Entity;进行添加using System.Data.Entity; 命名空间。 重载包含在该命名空间中。 然后你就可以使用了

repo.Material.Include(m => m.BusinessUnit)

您必须使用Entity Framework 4.1或更高版本才能使用此功能

在这里使用强类型

repo.Material.Include(m => m.BusinessUnit)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM