7. 实现数据的增加
在LINQ to SQL中,可以很方便的进行数据的操作,可以调用InsertOnSubmit方法,如果需要批量增加的,需要调用泛型的InsertAllOnSubmit()方法。如下所示:
Code7:
DemoDataClassesDataContext db = new DemoDataClassesDataContext();在这段代码中,我们首先构造一个Customer对象,并运行对象初始化器对其进行初始化。调用InsertOnSubmit()方法来增加一条记录,并用SubmitChanges()将其持久化到数据库中。运行Code7中的代码后,可以看到在数据库中增加了一条新的记录:
Customer customer = new Customer {
Name = "TerryLee",
City = "TianJin",
Phone = "110119114",
Address = "Tianjin Nankai"
};
db.Customers.InsertOnSubmit(customer);
db.SubmitChanges();

8. 实现数据的修改
在LINQ to SQL中实现对数据的修改,只需要在查询出数据后,直接调用DataContext方法SubmitChanges()进行更新就可以了。如果涉及到在多个DataContext之间进行数据的更新,需要使用Attach方法(后续文章中会写到)。
Code8:
DemoDataClassesDataContext db = new DemoDataClassesDataContext();上述代码首先从数据库中查询出Id为1的记录,并修改其Name属性为TerryLee,最后调用SubmitChanges()方法将其持久化到数据库中。
Customer customer = db.Customers.Single(p => p.Id == 1);
customer.Name = "TerryLee"; ;
db.SubmitChanges();
9. 实现数据的删除
在LINQ to SQL中,实现数据的删除,类似与上面所讲的数据的增加,只不过调用的方法相应的变为DeleteOnSubmit()和DeleteAllOnSubmit(),这里就不再细说了,如下代码片段所示:
Code9:
DemoDataClassesDataContext db = new DemoDataClassesDataContext();上述代码首先查询出Id为1的记录,并将其删除。
Customer customer = db.Customers.Single(p => p.Id == 1);
db.Customers.DeleteOnSubmit(customer);
db.SubmitChanges();
10. 结束语
用LINQ to SQL来实现一个简单的增删改查的例子到这里就结束了。大家也许会想,使用LINQ to SQL后,执行一个查询句法或者Lambda表达式,怎么能知道它相当于执行了什么样的SQL语句呢?这个问题,下篇文章数据上下文(DataContext)将给您答案,期待您继续关注。