EF的 NoTracking 的一些记录】的更多相关文章

NoTracking官方解释 跟踪与非跟踪查询 跟踪行为可控制 Entity Framework Core 是否将有关实体实例的信息保留在其更改跟踪器中. 如果已跟踪某个实体,则该实体中检测到的任何更改都会在 SaveChanges() 期间永久保存到数据库.Entity Framework Core 还会修正从跟踪查询中获取的实体与先前已加载到 DbContext 实例中的实体两者之间的导航属性. 可以理解为: DbContext如果配置为TrackAll. 则DbContext会跟踪返回的实…
项目总结:EF操作与Linq写法记录 1.EF引入 新建一个MVC项目之后,要引用EF框架,可以按照以下步骤进行: 1),在Models中添加项目 2),选择Entity Data Model,并重新填写名字 3),选择代码优先之后,选择连接的数据库以及表,之后便生成,此时模型里面的实体就相当于数据库中的表了 2.Linq与一些lambda写法 1).单表查询: using (var db = new DBModel()) { DepartmentList = (from n in db.out…
1.EFDbContext”不包含必需的 providerName 特性: <connectionStrings> <add name="EFDbContext" providerName="System.Data.SqlClient" connectionString="Data Source=(localdb)\v11.0;Initial Catalog=SportsStore;Integrated Security=True;Con…
本文目录 查看实体当前.原始和数据库值:DbEntityEntry 查看实体的某个属性值:GetValue<TValue>方法 拷贝DbPropertyValues到实体:ToObject方法 修改DbPropertyValues当前值:索引器 克隆实体:Clone方法 设置实体的值:SetValues方法 克隆实体:SetValues 获取和设置实体的单个属性:Property方法 查询实体的属性是否被修改:IsModified方法 修改导航属性 重新加载实体:Reload方法 读取相关联的…
前言 本文主要是讲解EF Core3.0+ 通过拦截器实现读写分离与SQL日志记录 注意拦截器只有EF Core3.0+ 支持,2.1请考虑上下文工厂的形式实现. 说点题外话.. 一晃又大半年没更新技术博客..唉,去年一年发生了太多事情..博主真的 一言难尽.. 有兴趣的可以去看看:记录一下,也许是转折,也许是结束,也许是新希望的一年 正文 1.通过拦截器实现读写分离 先讲一下本文实现的方式吧 SQL 通过数据库本身的功能 实现主从备份 大概原理如图: EF Core在查询的时候通过DbComm…
下订单减库存的方式 现在,连农村的大姐都会用手机上淘宝购物了,相信电商对大家已经非常熟悉了,如果熟悉电商开发的同学,就知道在买家下单购买商品的时候,是需要扣减库存的,当然有2种扣减库存的方式, 一种是预扣库存,相当于锁定库存, 一种是直接扣减库存. 我们采用的是预扣库存的方式,预扣库存的时候,在SalesInfo表中,将最大可售数量MaxSalesNum减去购买数量,用一条SQL语句来表示这个业务,就是下面这个样子的: update salesinfo set MaxSalesNum=MaxSa…
首先在应用启动时执行:DbInterception.Add(new LogFormatter());   然后加入如下类: #region [ EF的数据库执行日志记录 ] public class LogFormatter : IDbCommandInterceptor { private readonly Stopwatch _stopwatch = new Stopwatch(); public void NonQueryExecuting(DbCommand command, DbCom…
首先根据模板生成list视图,上面就会有一个delete的链接,但是模板自带的这种删除,需要另外再打开一个删除页,再进行删除.我们可以利用ajax来改写,实现在当前页删除. 在视图上面,将原来的 @Html.ActionLink("Delete", "Delete", new { id=item.Uid }) 改为 <a href="#" name="delete" id="@item.Uid">…
记录一次ef code first的学习记录 最近想做一套自己的框架,正在寻找合适的ORM,之前参照力软(很早之前的版本了)的底层代码,做了一套自己的增删改查, 但是使用起来总觉得缺了点什么? 所以决心找一个成熟的ORM框架,学习搭建,发现一下自己的不足 对了Nhibernate,Entity Framework以及SqlSugar等轻量级的框架,最后选择了Entity Framework(毕竟微软大厂,跟着大厂走) 1,首先新建一个项目,winform,mvc,控制台都可以,新建以后使用nug…
Entity Framework在使用时,很多时间操纵的是Model,并没有写sql语句,有时候为了调试或优化等,又需要追踪Entity framework自动生成的sql(最好还能记录起来,方便出错时排查) 方式一: 通过System.Data.Entity.DataBase.Log属性指定一个无返回值的委托,来实现记录日志的功能 public partial class EFContext<T> : DbContext where T : class { public EFContext(…