直接使用提交过来的类来更新字段EntityState.Modified并过滤null值的方法

public T Update<T>(T entity) where T : ModelBase
        {
            var set = this.Set<T>();
            set.Attach(entity);
            foreach (System.Reflection.PropertyInfo p in entity.GetType().GetProperties())
            {
                if (p.GetValue(entity) != null)
                {
                    this.Entry<T>(entity).Property(p.Name).IsModified = true;
                }
            }
            this.SaveChanges();
            return entity;
        }

 

 foreach (PropertyInfo p in codeRuleEntity.GetType().GetProperties())
  {
    if (p.GetValue(codeRuleEntity) == null)
     {
          db.Entry(codeRuleEntity).Property(p.Name).IsModified = true;
     }
  }
db.Entry(codeRuleEntity).State = EntityState.Modified;

 

你可能感兴趣的:(直接使用提交过来的类来更新字段EntityState.Modified并过滤null值的方法)