当前位置: 首页 > 编程笔记 >

Entity Framework 使用AsNoTracking

慕佑运
2023-03-14
本文向大家介绍Entity Framework 使用AsNoTracking,包括了Entity Framework 使用AsNoTracking的使用技巧和注意事项,需要的朋友参考一下

示例

错误的例子:

var location =  dbContext.Location
                     .Where(l => l.Location.ID == location_ID)
                     .SingleOrDefault();

return location;

由于上述代码只是返回一个实体而无需修改或添加它,因此我们可以避免跟踪成本。

好的例子:

var location =  dbContext.Location.AsNoTracking()
                     .Where(l => l.Location.ID == location_ID)
                     .SingleOrDefault();

return location;

当我们使用函数时,AsNoTracking()我们明确地告诉实体框架实体没有被上下文跟踪。从数据存储中检索大量数据时,这尤其有用。但是,如果您要对未跟踪的实体进行更改,则必须记住在调用之前附加它们SaveChanges。

 类似资料:
  • EntityFramework 是微软公司为 .NET 开发人员推出的一个 ORM 框架,来实现对数据库单表数据的创建、读取、更新和删除操作,也就是所谓的CRUD(C:Create/R:Read/U:Update/D:Delete)。需要说明的是,如果在VS2008中使用EntityFramework就需要安装VS2008SP1。

  • IdentityServer 是为可扩展性设计的,其中一个扩展点是其所需数据的存储机制。该快速入门展示了如何配置 IdentityServer 以使用 EntityFramework(EF)作为其数据存储机制(取代目前为止我们一直使用的内存实现)。 IdentityServer4.EntityFramework 我们将移动到数据库的数据有两种,第一种是配置数据(资源 resources 和客户端

  • 使用Visual Studio 2015 Community Edition安装实体框架时出现以下错误: 如果有关系的话,我在MacBook Pro上使用Parallels运行Windows7x64。 编辑Mark Sowul下面的回答指出,使用网络共享,一个并行的功能,会导致这个问题。但是,我不确定如何更改目录。

  • 问题内容: 我正在尝试学习EntityFramework,但无法获得基本的插入和更新功能。当包含SqlCe数据库(.sdf)时,向导将创建Test.edmx / designer.vb文件。由此,我创建了我的数据上下文,如下所示。表名称是“用户”。 我的实体类的语法似乎与Web上的示例有些不同。这有点令人困惑,我不知道为什么会这样。下面,我展示了两种不同的Insert方法,这两种方法都在.Save

  • 在我的模型中,我有一个聚合根,每个根都有一个关联的的集合。每个都有一个反向导航属性。 我需要一次获取所有的,这导致在我的中出现以下查询 是来自EF上下文的。 问题是懒惰加载没有实现(我也不想实现它),查询后的属性是。所有的东西都正确地通过EF映射。 要检索具有非空的所有的查询应该是什么? 我用的是EF6。

  • 似乎Microsoft.NET.Sdk.Functions版本3.0.4与EntityFrameworkCore一起打破了DI。 在3.0.3中,我可以在DI中添加一个InMemoryDatabase,并在我的函数中使用它,但是升级到3.0.4中断声明: Microsoft.Extensions.DependencyInjection.Abstractions:尝试激活AzureFunction.

  • 9.1 ABP基础设施层 - 集成Entity Framework ABP可以与任何ORM框架协同工作,它内置了对EntityFramework的集成支持。本文将介绍如何在ABP中使用EntityFramework。本文假定你已经初步掌握了EntityFramework。 译者注:怎么才算初步掌握了EntityFramework呢?译者认为应当懂得使用Code First模式进行CRUD。 9.1

  • 问题内容: 简而言之:我正在尝试在Entity Framework中运行Oracle存储过程(我知道这听起来很奇怪,但是在一般应用程序中使用Entity Framework,但是由于修改密钥的限制,EF无法处理此特定命令。值)。 过程具有一些参数(仅IN),并更新表中的值。我通过运行测试了它: 它工作正常。 我的参数定义如下: 我的查询是: 我正在尝试从C#代码执行它。即通过运行: 我收到错误OR