首页 > 代码库 > Entity Framework 学习第二天 续

Entity Framework 学习第二天 续

今天来写一点不一样的删除,修改,查询

下面只写了几个方法

 1         /// <summary> 2         /// 根据删除条件进行删除 3         /// </summary> 4         /// <param name="removeWhere"></param> 5         public void remove(System.Linq.Expressions.Expression<Func<StudentInfo, bool>> removeWhere) 6         { 7             //使用查找方式,现将要删除的条件传递进来,将要删除的数据查询出来 8             List<StudentInfo> studentList = db.Student.Where(removeWhere).ToList(); 9             //遍历查询出来的数据,然后进行删除操作,这里用到lambda表达式,后期有时间会写一下有关的使用10             studentList.ForEach(s => db.Student.Remove(s));11             db.SaveChanges();12         }13         /// <summary>14         /// 修改数据15         /// </summary>16         /// <param name="student"></param>17         /// <param name="strs">可变参数,传递那些属性被修改了</param>18         public void update(StudentInfo student,params string[] strs)19         {20             DbEntityEntry entry= db.Entry<StudentInfo>(student);21             entry.State = System.Data.EntityState.Unchanged;22             //遍历属性,修改其标志位23             foreach (string temp in strs)24             {25                 entry.Property(temp).IsModified = true;26             }27             db.SaveChanges();28         }29 30         /// <summary>31         /// 基本查询32         /// </summary>33         /// <param name="where"></param>34         /// <returns></returns>35         public List<StudentInfo> where(System.Linq.Expressions.Expression<Func<StudentInfo,bool>> where)36         {37            return db.Student.Where(where).ToList();38         }39         /// <summary>40         /// 带排序条件的查询,并包括页数,页容量41         /// </summary>42         /// <typeparam name="TKey"></typeparam>43         /// <param name="where"></param>44         /// <param name="orderBy"></param>45         /// <param name="pageSize"></param>46         /// <param name="pageIndex"></param>47         /// <returns></returns>48         public List<StudentInfo> whereByOrder<TKey>(Expression<Func<StudentInfo, bool>> where, Expression<Func<StudentInfo, TKey>> orderBy, int pageSize, int pageIndex)49         {50             return db.Student.Where(where).OrderBy(orderBy).Skip(pageIndex - 1).Take(pageSize).ToList();51         }
View Code

看上去比第一天的内容上了些档次呢。哈哈