EF 如何更新部分列

来源:互联网 发布:qt编程软件 编辑:程序博客网 时间:2024/06/06 15:02

一、 为什么需要
在使用EF对数据库进行操作时更新时比较常见的操作;往往一张表的字段比较多但只需要更新其中的部分列(如修改密码)。这时更新部分列更新就派上用场了。

二、 那该怎么做呢

  1. 列表内容
    新建需要更新的对象(千万别从数据库查,否则可能会出现部分字段不能为空的原因)
    Tentity entity = new Tentity() {/进行必要字段的赋值,主键为必须/};

  2. 保存数据代码

netDiskContext.Set<TEntity>().Attach(entity);//上面这种方式使用中总是没有效果,不知道为什么。下面的可以,如果修改比较多就很麻烦了//netDiskContext.Entry<TEntity>(entity).CurrentValues.SetValues(entity);netDiskContext.Entry(entity).Property("需要修改的属性名").IsModified = true;netDiskContext.SaveChanges();

三、注意:这里是新建实体类而不是从数据库里面查出来,否则达不到更新部分列的效果

原创粉丝点击