虽然微软已经停止更新了LinqToSql,但是目前的已完全满足目前的需求.

第一步:添加LinqToSql

第二步:将其关联的Sqlserver数据库

第三步:数据库已变成实体类

第四步:可以对数据库进行增删改查操作

   static void Main(string[] args)
{
DataClassesDataContext dataContext = new DataClassesDataContext(); //生成分类实体类
Category category1 = new Category()
{
Name = "国际要闻"
};
dataContext.Category.InsertOnSubmit(category1);
dataContext.SubmitChanges();
}

这样就新增成功了

DataClassesDataContext  这个相当于EF中的DBContext,数据库所有对象都在里面了

DataClassesDataContext的属性Category就是映射数据表的一个集合属性

Category category1 = new Category()   就相当于表的实体类,属性映射到对应字段

       Insert操作
      Insert用于向数据库添加记录。一般情况下,使用“DataContext.表映射集合.InsertOnSubmit(实体类)”的方式就可以完成Insert操作。不过这里要注意一点,由于Linq to Sql使用了“Unit of Work”模式,所以,对数据库的操作不会立即提交到数据库,而要调用DataContext的SubmitChanges方法,所有改动才会被提交到数据库。

Delete操作
      Delete操作用于从数据库中删除记录。表映射集合的DeleteOnSubmit方法可以实现这个操作。这个方法需要一个参数,就是要删除的实体类,这里不能直接传个ID去删除,要首先通过ID找到相应实体类,传给DeleteOnSubmit再删除。当然最后不要忘了SubmitChanges。

Update操作
      Update操作用于更新数据库中某已存在记录的信息。在Linq to Sql中,Update操作就是首先加载相应的实体类,修改其相应字段后,SubmitChanges就可以了。

Select操作

        dataContext.Category是一个linq.Data.Table<T>的一个泛型集合,所有我们可以使用Linq进行查询

 var s = from b in dataContext.Category
where b.ID ==
orderby b.ID
select b.Name;

Linq二 LinqToSql的更多相关文章

  1. c#中的linq二

    c#中的linq二   using System; using System.Collections.Generic; using System.Linq; using System.Text; us ...

  2. 你所不知道的linq(二)

    上一篇说了from in select的本质,具体参见你所不知道的linq.本篇说下from...in... from... in... select 首先上一段代码,猜猜结果是什么? class P ...

  3. LINQ 如何动态创建 Where 子查询

    还是那句话,十年河东,十年河西,莫欺少年穷! 学无止境,精益求精... 今天探讨下如何构造动态的LINQ子查询 LINQ,相信大家都写过,很简单,下面以一个基本的范例说明下: namespace Co ...

  4. Linq的使用场景简介和认识

    一:C#的一个分支Linq 二:学Linq需要有一些基础知识 1. var 隐式类型 2. 匿名类型/匿名方法 3. 自动属性 4. 委托/泛型的委托 5. lambda 6. 扩展方法 7. 对象初 ...

  5. 【转】【收藏】LINQ学习心得分享--------(二)LINQ语法详解

    原地址:http://blog.csdn.net/xuemoyao/article/details/8053444   通过上一章节的学习,相信大家已经掌握了学习LINQ的前期的准备知识.在这一节里, ...

  6. LINQ基础 之 LINQ TO SQL (二)

    配置LINQ TO SQL 首先添加一个Linq to sql文件,以.dbml结尾的文件.无法把表拖拽到.dbml文件中,提示“所选对象使用不支持的数据提供程序” 解决方案 在服务器资源管理器中右键 ...

  7. C#高级功能(二)LINQ 和Enumerable类

    介绍LINQ之前先介绍一下枚举器 Iterator:枚举器如果你正在创建一个表现和行为都类似于集合的类,允许类的用户使用foreach语句对集合中的成员进行枚举将会是很方便的.我们将以创建一个简单化的 ...

  8. 那天有个小孩跟我说LINQ(二)转载

    1  LINQ TO Objects续(代码下载)      新建项目 linq_Ch2控制台程序,新建一个Entity文件夹    1.1 学生成绩查询(练习Join)         有三张表如下 ...

  9. linq总结系列(二)---Expression

    一.linq中的表达式和表达式树 Linq中的表达式(Expression<TDel>)是强类型的lambda表达式,对Func和Action形式的委托做了一层封装. lambda表达式的 ...

随机推荐

  1. [已解决] java.net.InetAddress.getHostName() 阻塞问题

    在学习java nio的过程中发现某些情况下使用该方法会导致程序阻塞,(情况:服务器,Linux:客户端,WIN10) java.net.InetAddress.getHostName() 阻塞情况如 ...

  2. php 全角半角转换

    <?phpheader("Content-type: text/html; charset=utf-8");// 第一个参数:传入要转换的字符串// 第二个参数:取0,半角转 ...

  3. SC.UI

    IController using Microsoft.Practices.Prism.Events; using Microsoft.Practices.Prism.Regions; using M ...

  4. python之rabbitMQ篇

    一.RabbitMQ安装 RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统,它遵循Mozilla Pulic License开源协议. MQ全称为Message Queue,消息队列 ...

  5. 批量删除.pyo后缀的文件

    find . -name "*.pyo" -exec rm {} \; 删除以.pyo后缀的所有文件 find . ! -name "*.pyo" -exec ...

  6. C#中的多线程 - 同步基础

    原文:http://www.albahari.com/threading/part2.aspx 文章来源:http://blog.gkarch.com/threading/part2.html 1同步 ...

  7. sqlalchemy 优化count()……

    一.sqlalchemy 中的count() count()统计数据特别慢: session.query(cls).count()  8W 数据花费了近50s 但是在数据库中直接查询: select ...

  8. pycharm 注册

    pycharm在线注册:设置激活服务器 Help->Register->License server 在License server address中填写:http://idea.lany ...

  9. Windows下配置Git

    1.从git官网下载windows版本的git:http://git-scm.com/downloads 2.一般使用默认设置即可:一路next,git安装完毕! 3.但是如果这时你打开windows ...

  10. 深入SpringBoot:自定义PropertySourceLoader

    http://www.jianshu.com/p/5206f74a4406 ********************************* 前言 上一篇文章介绍了SpringBoot的Enable ...