码迷,mamicode.com
首页 > Web开发 > 详细

MVC EF 修改 封装类 通用泛型方法(二)

时间:2015-04-26 12:11:32      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:


修改 这个 方法 如下。 排除 null 值。

  /// <summary>
        ///  修改 多数 数据, 个别数据除外,  proNames 不写 则是 修改全部
        /// </summary>
        /// <param name="model">要修改的实体对象(对面 过滤null 值)</param>
        /// <param name="proNames">不需要要修改的 属性 名称</param>
        /// <returns></returns>
        public int ModifyWithOutproNames<T>(T model, params string[] proNames) where T : class
        {

            DbEntityEntry entry = db.Entry<T>(model);
            entry.State = EntityState.Unchanged;
            var properties = model.GetType().GetProperties();
            for (int i = 0; i < properties.Length; i++)
            {
                if (properties[i].PropertyType.Name.Contains("ICollection")// 排除 外键  
                    || proNames.Contains(properties[i].Name)|| properties[i].GetValue(model, null)==null) continue;
                entry.Property(properties[i].Name).IsModified = true;
            }
            db.Configuration.ValidateOnSaveEnabled = false;
            return db.SaveChanges();
        }

 

MVC EF 修改 封装类 通用泛型方法(二)

标签:

原文地址:http://www.cnblogs.com/bingguang/p/4457403.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!