Loading

使用Linq to SQL实现基本的增、删、改、查及绑定控件(C#)

首先介绍一下,我使用的是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子句

posted @ 2009-08-31 08:41  一只小青蛙  阅读(521)  评论(1编辑  收藏  举报