• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Amber❤
博客园    首页    新随笔    联系   管理    订阅  订阅

Entity Framework 基本学习

首先记下学到的零散知识点

全局变量在某函数被改变后出了函数便会回到初始值,但静态全局变量可以被某函数改变

repeater的datasourse可以是list泛型,但不可以是var

表单提交会重新刷新页面,因此全局变量在pagelaod里赋值,值就不会变,pagelaod里一定要有ispostback

 

增

using (var db = new BloggingContext())                             //新建链接
        {
            var blog = new Blog { Name = TextBox1.Text };    //用定义一个blog变量 条件是name那一列的内容是textbox.text
            db.Blogs.AddObject(blog);                                    //addobject方法将blog变量加入Blog表中
            db.SaveChanges();                                               //保存改变
        }

 

 

删

 using (var db = new BloggingContext())
                {
                    var blog = db.Blogs.Where(p => p.BlogId == id).First();  //在blog表里找到符合条件的那条记录
                    db.Blogs.DeleteObject(blog);                              //删之
                    db.SaveChanges();                                            //保存改变
                }

 

查

 

using (var db = new BloggingContext())
            {
                ObjectQuery<Blog> As = db.Blogs;          //这句话是得到整个blog表
                IQueryable<Blog> aQuery = from a in As  //如果得到整个表这句话没什么用,用来限定条件
                                          where a.BlogId == 1
                                          select a;
                Repeater1.DataSource = As;                    //这里可以写As 也可以写 aQuery
                DataBind();                                             //绑定
            }

 

改

 

 using (var db = new BloggingContext())
        {
            var blog = db.Blogs.Where(p => p.BlogId == idd).First();    //和删除差不多,找到那一条记录
            blog.Name = TextBox2.Text;                                             //需要改哪个字段就可以改
            db.SaveChanges();
        }

 

分页

    public virtual List<Blog> Fenye(int pageIndex, int pageSize)    //第几页和每页的条数大小,用list作为返回值,repeater的datasource可以是list

    {

        List<Blog> list = new List<Blog>();                                   //定义一个以blog为节点的list

        using (var db = new BloggingContext())        

       {            

               list = db.Blogs.OrderByDescending(p => p.BlogId).Skip(pageSize * pageIndex).Take(pageSize).ToList();    

              //分页,    OrderByDescending(p => p.BlogId)按id降序排列,Skip() 获取指定索引的剩余记录,Take()取得指定数量的记录

        }        

        return list;     //返回那个list

}

在repeater数据绑定的时候根据page传参带入函数即可

posted @ 2013-09-18 17:44  Amber❤  阅读(193)  评论(2)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3