其他分享
首页 > 其他分享> > dotnetcore EF 小技巧(但不推荐)

dotnetcore EF 小技巧(但不推荐)

作者:互联网

正常情况下,都是通过EF先取出entity,再修改或删除。
这样会生成一条select和一条update或delete语句,但是通过update/delete sql可以一句就完成。

使用以下代码,通过欺骗EF的方式,使得一句sql完成目标。

    using (MyDbContext ctx = new MyDbContext())
    {
        Student a1 = new Student() { Id = 10, Name = "sstudent0001" };

        EntityEntry e1 = ctx.Entry(a1);
        e1.Property("Name").IsModified = true;

        Student a2 = new Student() { Id = 11 };
        ctx.Entry(a2).State = EntityState.Deleted;

        await ctx.SaveChangesAsync();
    }

之所以不推荐,是因为

  1. 提升性能有限
  2. 增加代码维护难度。

标签:MyDbContext,技巧,EF,ctx,dotnetcore,Student,new,Name
来源: https://www.cnblogs.com/mryux/p/15860689.html