首页 > 数据库 > mysql教程 > LINQ to Sql系列一 增,删,改

LINQ to Sql系列一 增,删,改

WBOY
发布: 2016-06-07 17:44:56
原创
1125 人浏览过

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学生课程表,如图:

l2s01

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

2,创建LINQ to classes文件

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

l2s02

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

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

l2s03

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

l2s04

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

l2s05

按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

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板