zoukankan      html  css  js  c++  java
  • 初学LINQ增删改查(一)

    1、新建一个网站或者项目

    2、添加新项----LINQ to SQL类,文字名称为DataClasses.dbml,如图所示:初学LINQ增删改查(一)

    3、打开DataClasses.dbml文件,在服务器资源管理器中连接数据库,把要用到的表拖拽到DataClasses.dbml上,如图所示:初学LINQ增删改查(一)保存关闭DataClasses.dbml文件,在webConfig文件中会自动生成与数据库的链接:

    <connectionStrings>
      <add name="OQSS35ConnectionString" connectionString="Data Source=.;Initial Catalog=OQSS35;Integrated Security=True"
       providerName="System.Data.SqlClient" />
     </connectionStrings>

    4、添加一个类似SqlHelper的类文件LinqHelper.cs

    LinqHelper.cs文件中的代码为:

    public static DataClassesDataContext create()

    {

       return new DataClassesDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["OQSS35ConnectionString"].ToString());

    }

    5、新建一个index.aspx页面,在index.aspx页面放一个GridView控件,在GridView控件上绑定字段。页面代码如图所示:初学LINQ增删改查(一)

    6、在index.aspx.cs文件中写代码绑定表中的所有的数据:代码如下

    DataClassesDataContext dc=LinqHelper.Create();

    //绑定数据

    public void BindData()

    {

      this.GridView1.DataSource=from c in dc.User

                                select new

                                {

                                      c.username,

                                      c.password,

                                      c.GID,

                                      c.UID

                                 };//User为表名

     this.GridView1.DataBind();

    }

    7、添加数据

    protected void btnAdd_Click(object sender,EventArgs e)

    {

       User user=new User();//实例化表User

       user.username=this.txtusername.Text.Trim().ToString();//用户名

       user.password=this.txtpassword.Text.Trim().ToString();//密码

       user.GID=Convert.ToInt32(this.txtGID.text.Trim().ToString());//GID

       dc.User.InsertOnSubmit(user);//把新增的数据放到dc中

       dc.SubmitChanges();//把新增的数据存到数据库中

       this.BindData();

    }

    8、修改、删除操作

    给GridView添加一列

     <ItemTemplate>
                    <a href="update.aspx?UID=<%=eval_r("UID") %>">编辑</a>
                    <a href="update.aspx?UID=<%=eval_r("UID") %>&&flag=del">删除</a>
                    </ItemTemplate>
                    </asp:TemplateField>

    再新建一个页面update.aspx,在update.aspx中进行修改删除操作

    update.aspx 页面代码如下:

     用户名:<asp:TextBox ID="txtusername" runat="server"></asp:TextBox><br />
        密码:<asp:TextBox ID="txtpassword" runat="server"></asp:TextBox><br />
        GID:<asp:TextBox ID="txtGID" runat="server"></asp:TextBox><br />
            <asp:Button ID="btnAdd" runat="server" Text="修改" onclick="btnAdd_Click" />

    public void BindData()

    {

      //显示数据

      if(Request.QueryString["UID"]!=null)

      {

         DataClassesDataContext dc=LinqHelper.create();

        int UID=Convert.ToInt32(Request.QueryString["UID"].ToString());

        var user=dc.User.where(a=>a.UID==UID).Single();//查询数据

        this.txtusername.Text=user.username;//用户名

        this.txtpassword.Text=user.password;//密码

        this.txtGID.Text=user.GID.ToString();//GID

       }

      //删除数据

      if(Request.QueryString["Flag"]!=null)

      {

         DataClassesDataContext dc=LinqHelper.create();

         int UID=Convert.ToInt32(Request.QueryString["UID"].ToString());

         var user=dc.User.where(a=>a.UID==UID).Single();//查询

         dc.User.DeleteOnSubmit(user);//删除dc上的数据

         dc.SubmitChanges();//删除数据库里的记录

         Response.Redirect("index.aspx");

      }

    }

    //修改

     protected void btnUpdate_Click(object sender, EventArgs e)

    {

      DataClassesDataContext dc=LinqHelper.create();

      int UID=Convert.ToInt32(Request.QueryString["UID"].ToString());

      var user=dc.User.where(a=>a.UID==UID).Single();//查询

      user.username=this.txtusername.Text.Trim().ToString();//用户名

      user.password=this.txtpassword.Text.Trim().ToString();//密码

      user.GID=Convert.ToInt32(this.txtGID.Text.ToString());//GID

     dc.SubmitChanges();//修改数据库中的记录

     Response.Redirect("index.aspx");

    }

    9、查询

    在index.aspx页面中添加<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:Button ID="btnSelect" runat="server" Text="查询" onclick="btnSelect_Click" />

    后台代码

      protected void btnSelect_Click(object sender, EventArgs e)
        {

    DataClassesDataContext dc=LinqHelper.Create();

    this.GridView1.DataSource=dc.User.where(a=>a.username==this.textbox1.text).Select(a=>new {a.GID,a.username,a.password,a.UID});

    //this.GridView1.DataSource = dc.User.Where(a => a.username.Contains(this.TextBox1.Text.Trim().ToString())).Select(a => new { a.UID, a.username, a.password, a.GID });//contains模糊查询

    this.GridView1.DataBind();

         }

    10、分页

     protected void gvUser_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            gvUser.PageIndex = e.NewPageIndex;
            this.BindData();
        }

  • 相关阅读:
    递归算法的时间复杂度分析
    MongoDB入门简单介绍
    关于用例须要多少文档以及业务用例等等
    Java连接redis的使用演示样例
    C++ String 转 char*
    MySQL和PostgreSQL 导入数据对照
    SSL连接建立过程分析(1)
    XTU OJ 1210 Happy Number (暴力+打表)
    Codeforces Round #258 (Div. 2)[ABCD]
    CreateFont具体解释
  • 原文地址:https://www.cnblogs.com/xw2cc1314/p/2968649.html
Copyright © 2011-2022 走看看