EF增删改查

   //删除
        public int UserDel(System.Linq.Expressions.Expression<Func<UserInfo,bool>> del)
        {
            List<UserInfo> list = db.UserInfoes.Where(del).ToList();
            list.ForEach(u=>db.UserInfoes.Remove(u));
            return db.SaveChanges();
        }
        //修改
        public int UserUpdate(UserInfo u,params string[] par)
        {
            DbEntityEntry<UserInfo> entry= db.Entry<UserInfo>(u);
            entry.State=EntityState.Unchanged;
            foreach (string p in par)
            {
                entry.Property(p).IsModified = true;
            }
            return db.SaveChanges();
        }
        //查询
        public List<UserInfo> UserSelect(Expression<Func<UserInfo,bool>> whereLambda)
        {
            return db.UserInfoes.Where(whereLambda).ToList();
        }
        //带排序的查询
        public List<UserInfo> userSelectOrderBy<Tkey>(Expression<Func<UserInfo, bool>> whereLambda, Expression<Func<UserInfo, Tkey>> orderByLambda)
        {
            return db.UserInfoes.Where(whereLambda).OrderBy(orderByLambda).ToList();
        }
        //分页
        public List<UserInfo> UserGetListPage<Tkey>(Expression<Func<UserInfo,bool>> whereLambda,Expression<Func<UserInfo,Tkey>> orderByLambda,int pageIndex,int pageSize)
        {
            return db.UserInfoes.Where(whereLambda).OrderBy(orderByLambda).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList();
        }

注意:如果在model 层生成ef,关于ef的配置信息会生成到model层的app.config中,我会需要将这些配置信息复制到web.config中, <configSections>要放到<configuration>的第一位置,<entityFramework>正常放,在把连接字符串放到里面就行了。

注意2:引用entityFramework的版本号须相同;

posted on 2013-12-24 10:48  无缘沙漠雨  阅读(266)  评论(0)    收藏  举报

导航