欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

LINQ to Sql系列一 增,删,改

程序员文章站 2024-01-27 20:11:28
...

LINQ to Sql系列一 增,删,改 首先,我们来了解一下LINQ to sql 是什么,我想从以下几点来做说明。 1,LINQ是从.net framework 3.0开始引入的的语言特性,主要是用来对集合数据进行操作的。 2,LINQ to sql是LINQ在数据库数据访问方面的一个ORM框架。 了解

LINQ to Sql系列一 增,删,改

首先,我们来了解一下LINQ to sql 是什么,我想从以下几点来做说明。

1,LINQ是从.net framework 3.0开始引入的的语言特性,主要是用来对集合数据进行操作的。
2,LINQ to sql是LINQ在数据库数据访问方面的一个ORM框架。

了解完概念之后,我们就开始地学习LINQ to sql了,不过在正式利用LINQ to sql去进行数据的增,删,改,查之前,我们还有一些准备工作要做。

准备工作

1,创建数据库

创建数据库名为LinqtoSqlDemoDb,一共有四张表分别是Student学生表,Class班级表,Course课程表和StudentCourse学生课程表,如图:

LINQ to Sql系列一 增,删,改

注意表与表之间的外键关系。

2,创建LINQ to classes文件

打开VS2010,创建一个类库工程命名为LinqtoSqlDemo.DAL,在工程上右键单击,选择“add--->add item”,服务器空间,在文件类型中选择“LINQ to classes”,命名为L2SDB.dbml,如图所示:

LINQ to Sql系列一 增,删,改

3,根据数据库表自动生成代码

创建好LINQ to classes文件后,选择菜单“view--->server explorer”打开server explorer窗口,增加一个数据库连接。如图一

LINQ to Sql系列一 增,删,改

展开tables开点,应该就能看到刚才创建的四张表,将它们选中然后拖到设计区,就会得到如图所示的样子。

LINQ to Sql系列一 增,删,改

在设计窗口按F4键打开DataContext的属性窗口,我们需要给数据库上下文设定命名空间,如图。

LINQ to Sql系列一 增,删,改

按ctrl+f5保存,香港服务器,这样我们的LINQ to sql 的ORM就创建好了。下面我们就可以开始数据的增,删,改的操作了。

代码如下:

Add() { ClassInfo ci = }; Console.WriteLine(); using (L2SDBDataContext db = new L2SDBDataContext()) { TClass tc = new TClass(); ClassValueCopier.Copy(tc, ci); db.TClasses.InsertOnSubmit(tc); db.SubmitChanges(); } Console.WriteLine(); }

代码如下:

Delete(int id = 3) { Console.WriteLine(); using (L2SDBDataContext db = new L2SDBDataContext()) { //get the class by id TClass tc = db.TClasses.SingleOrDefault(p => p.ClassID == id); db.TClasses.DeleteOnSubmit(tc); db.SubmitChanges(); } Console.WriteLine(); }

代码如下:

Edit(int id = 3) { Console.WriteLine(); using (L2SDBDataContext db = new L2SDBDataContext()) { //get the class by id TClass tc = db.TClasses.SingleOrDefault(p => p.ClassID == id); tc.ClassName = ; db.SubmitChanges(); } Console.WriteLine(); }

总结:

1,首先我们必须得到DataContext对象,这个对象相当于一个数据库的GateWay,美国空间,所有的操作都是通过它进行的。

2,LINQ to sql使用了“Unit of work”模式,所以,对数据库的操作不会立即提交到数据库,而是需要显式调用DataContext对象的SubmitChanges方法,所有改动才会被提交到数据库中。

posted on

相关标签: LINQ 系列