刘辉

刘辉

(被访问167601次)

2.4 LINQ基础操作 下

作者:
刘辉
发表于:
2009/5/8 23:45:03
评论:
0
浏览:
648
RSS:
4

2.4.4、更新数据

针对于数据的更新,LINQ操作也是比较简单的,它仅需要对一个已有的实体中的元素进行重新赋值,并执行SubmitChanges即可完成对数据库的更新操作。

例:

UsersDataContext dal = new UsersDataContext();

        User user = dal.Users.FirstOrDefault(s => s.UserName == "guitarpark");

        if (user != null)

        {

            user.UserPass = "newpassword";

}

         dal.SubmitChanges();

通过例子我们看到,LINQ对数据的更新是相当的便捷的,在数据更新的时候我们要注意,当前实体必须存在,否则会报异常,故我们在进行数据操作的时候一般都会使用FirstOrDefault函数并判断当前返回的实体是否存在。

   

       2.4.7操作存储过程

        当然,LINQ也提供了对存储过程的操作,我们通过例子来讲解如何操作存储过程。

        首先,我们先建立一个名为getAllUser存储过程来获得所有的用户信息。

create procedure getAllUser

as

 select * from users

打开Linq  to Sql 设计器,并在数据库浏览器中找到此存储过程,并拖拽到设计器中,此时我们就会发现,这个存储过程已经被映射成了一个方法。

 

那么我们该怎么操作这个存储过程呢?请看以下代码

UsersDataContext dal = new UsersDataContext();

        GridView1.DataSource = dal.getAllUser();

        GridView1.DataBind();

现在看整个操作,是不是很简单呢。而且,我们还可以对此存储过程在来进行LINQ操作,例如对结果排序:

        UsersDataContext dal = new UsersDataContext();

        GridView1.DataSource = dal.getAllUser().OrderByDescending(s => s.ID);

        GridView1.DataBind();

当然,我们实际过程中存储过程往往不是这么简单,有时会是两个元素的集合或需要返回参数等等复杂操作,我们将留到下一节来介绍。

 

      2.4.8 操作视图

当然LINQ也是可以操作视图的,由于LINQ操作视图和操作存储过程在实现方法上相同,我们就不再介绍,请大家参照存储过程的说明实际操作。

 


LINQ是否都应该为大写呢?
标签:
  
 LINQ 

脚印

评论 (0)

注册用户登录才能发表评论,登录注册

日历

<< 2012年5月 >>
  12345
6789101112
13141516171819
20212223242526
2728293031  

最新评论