zoukankan      html  css  js  c++  java
  • 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传参带入函数即可

  • 相关阅读:
    信息系统开发平台OpenExpressApp - 支持列表分组(Group)
    WPF - 轻量级的开源XAML编辑器Kaxaml
    工作流 - 架构描述
    工作流 - 技术备忘录
    开源 - 轻型的表达式引擎 Flee
    敏捷实践(收集)
    人生就是......
    信息系统开发平台OpenExpressApp - 应用模型ApplicationModel
    软件观点 - 平台分类:系统平台、开发平台和开放平台
    软件产品线工程方法 - BAPO之架构(Architecture)
  • 原文地址:https://www.cnblogs.com/amberamber/p/3327044.html
Copyright © 2011-2022 走看看