zoukankan      html  css  js  c++  java
  • ASP.NET Linq to SQL实现基本的增、删、改、查及绑定控件(C#)

    < type="text/JavaScript"> < src="http://a.alimama.cn/inf.js" type="text/javascript">

    刚刚接触了一点点的Linq就一下子被它吸引住了,让我一下子就产生了想一口气学好使用的念头。

    于是就在ASP.NET官网搞了个视频看了下,我英语不是很好,不过大至听懂了是怎么用的。

    下面把我学到的一点点毛皮写了出来,算是一个学习记录吧。

      首先介绍一下,我使用的是Visual Studio 2008开发工具、SQL Server数据源,使用c#语言编写的。

      第一步、创建了一个SQL Server数据源

        先创建数据库    

        

        又建了一个User表

        

        相信这些都是小儿科的东西了,我就不再多说了。

      第二步、添加一个LINQ to SQL类

        我创建了一个User.dbml的LINQ to SQL类

        

        然后从服务器资源管理器中把表拖拽到视图中,可以双击视图中表的标题来重命名。

        

        最后保存一下。

      第三步、创建并执行查询

    namespace test
    {
        public partial class _Default : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    Bind();
                }
            }

            private void Bind()
            {
                UserDataContext db = new UserDataContext(); //创建一个DataContext类对象是必不可少的
                var user = from u in db.MyUser //在上面为它重命名为MyUser了,原来的表名为User
                           select u; //这里的查询就和SQL差不多了
                GridView1.DataSource = user; //绑定数据源

                GridView1.DataBind();
            }

       //插入信息

            protected void btnAdd_Click(object sender, EventArgs e)
            {
                UserDataContext db = new UserDataContext();
                string userName = TextBox1.Text;
                string userPwd = TextBox2.Text;
                //db.MyUser.InsertOnSubmit(new MyUser { Name=userName,Pwd=userPwd});

         //上面这句和下面这句都可以实现,只不过是两种不同的方法
                var user = new MyUser { Name = userName, Pwd = userPwd };
                db.MyUser.InsertOnSubmit(user); //执行插入
                db.SubmitChanges(); //提交对数据库做的修改
                Bind();
            }

      后面的删除、更新就跟上面的插入大同小异了,只是查询和执行查询所用到的方法不同而已。

    最主要的部分还是怎么创建查询,后面给大家提供一些LINQ中查询基本操作的关键字,具体怎么使用还有待于以后的继续学习。

       //删除信息

            protected void btnDel_Click(object sender, EventArgs e)
            {
                UserDataContext db = new UserDataContext();
                int i = Convert.ToInt32(TextBox3.Text.Trim());
                var user = db.MyUser.First(p => p.Id.Equals(i));
                db.MyUser.DeleteOnSubmit(user);
                db.SubmitChanges();
                Bind();
            }

       //更新信息

            protected void btnUpd_Click(object sender, EventArgs e)
            {
                UserDataContext db = new UserDataContext();
                int i = Convert.ToInt32(TextBox3.Text.Trim());
                var user = db.MyUser.First(p => p.Id.Equals(i));
                user.Pwd += user.Pwd;
                db.SubmitChanges();
                Bind();
            }

        }
    }

     

    * LINQ中查询基本操作的关键字

    --from子句

    --where子句

    --select子句

    --group子句

    --into子句

    --orderby子句

    --join子句

    --let子句

     

  • 相关阅读:
    ssm批量删除
    java.sql.SQLException: Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp
    springMVC中的日期格式的转化
    常用(二)
    ssm上传文件
    redis命令
    redis的下载与安装(linux版)
    解决Maven项目pom.xml文件报xxx argetclassesMETA-INFMANIFEST.MF (系统找不到指定的路径)问题
    flex布局元素操作详情
    彩色小球的重现以及下雪效果的实现
  • 原文地址:https://www.cnblogs.com/kevin2013/p/1791700.html
Copyright © 2011-2022 走看看