一、 为什么需要
在使用EF对数据库进行操作时更新时比较常见的操作;往往一张表的字段比较多但只需要更新其中的部分列(如修改密码)。这时更新部分列更新就派上用场了。
二、 那该怎么做呢
列表内容
新建需要更新的对象(千万别从数据库查,否则可能会出现部分字段不能为空的原因)
Tentity entity = new Tentity() {/进行必要字段的赋值,主键为必须/};保存数据代码
netDiskContext.Set<TEntity>().Attach(entity);
//上面这种方式使用中总是没有效果,不知道为什么。下面的可以,如果修改比较多就很麻烦了
//netDiskContext.Entry<TEntity>(entity).CurrentValues.SetValues(entity);
netDiskContext.Entry(entity).Property("需要修改的属性名").IsModified = true;
netDiskContext.SaveChanges();
三、注意:这里是新建实体类而不是从数据库里面查出来,否则达不到更新部分列的效果