LinQ全名:Linq to Sql,是一种数据库访问技术 

常见的数据库访问技术:
  1、ADO.NET
  2、Entity Framework  框架

  3、LinQ

LinQ是高集成化的数据访问类,它会自动映射数据库结构,将表名完整映射成为类名,将列名完整映射成字段名

一、LinQ创建
  LinQ文件是dbml结尾,一个数据库对应一个LinQ文件

  创建过程(连接数据库,也就是编写连接字符串):项目中右键,创建LINQ to SQL类 --》 点击服务器资源管理器 --》 (插头图标)连接到数据库 --》 填写服务器名、用户名、密码、选择使用的数据库 --》 确定 --》 找到所需要的表 --》拖拽到中间空白处,保存 --》实体类封装完毕

二、数据访问类编写:(例子如下)

  在App_Code下,新建类;实例化上下文对象:

    Data0720DataContext con=null;

    public UsersData()

    {

      con=new Data0720DataContext();

    }

1、增

  public void Insert(Users u)
  {
    con.Users.InsertOnSubmit(u);//添加对象u
    con.SubmitChanges();//执行提交改变方法
  }

2、删

  public void Delete(string uname)
  {

    1、先将对象查出来
    User u = con.Users.Where(r => r.UserName == uname).FirstOrDefault();

    2、删掉
    if (u != null)
    {
      con.Users.DeleteOnSubmit(u);
      con.SubmitChanges();
    }

  }

3、改

  public void Update(Users u)
  {
    Users uu = con.Users.Where(r => r.UserName == u.UserName).FirstOrDefault();
    if (uu != null)
    {
      uu.PassWord = u.PassWord;
      uu.NickName = u.NickName;
      uu.Sex = u.Sex;
      uu.Birthday = u.Birthday;
      uu.Nation = u.Nation;
    }

    con.SubmitChanges();

  }

4、查

  public List<Users> Select()
  {
    return con.Users.ToList();//返回一个泛型集合
  }

  lambda表达式
  con.Users.Where(r=>r.属性名==值).FirstOrDefault();

LinQ 基础的更多相关文章

  1. [.net 面向对象编程基础] (19) LINQ基础

    [.net 面向对象编程基础] (19)  LINQ基础 上两节我们介绍了.net的数组.集合和泛型.我们说到,数组是从以前编程语言延伸过来的一种引用类型,采用事先定义长度分配存储区域的方式.而集合是 ...

  2. LINQ基础概述

    介绍LINQ基础之前,首说一下LINQ 的历史和LINQ是什么,然后说一下学习 LINQ要了解的东西和 LINQ基础语法   LINQ 的历史 从语言方面的进化 –委托 –匿名方法 –Lambda表达 ...

  3. LINQ基础(二)

    本文主要介绍LINQ查询操作符 LINQ查询为最常用的操作符定义了一个声明语法.还有许多查询操作符可用于Enumerable类. 下面的例子需要用到LINQ基础(一)(http://www.cnblo ...

  4. LINQ基础(三)

    一.并行LINQ System.Linq名称空间中包含的类ParallelEnumerable可以分解查询的工作,使其分布在多个线程上. 尽管Enumerable类给IEnumerable<T& ...

  5. Linq基础操作之Select,Where,OrderBy,ThenBy源码分析

    Linq基础操作之Select,Where,OrderBy,ThenBy源码分析 二:Select 它是延迟执行.yield有得一拼,因为他们都是生成了一个枚举类. if (source is TSo ...

  6. Linq基础必备

    1.linq基础必备之对象初始化器和匿名类型因果分析   3. 一:对象初始化器 1.就是在new的时候给公共属性赋值的一种方式 2. 在没有初始化器之前的时候,我们是怎么初始化的呢??? 1. 构造 ...

  7. 20.C#LINQ基础和简单使用(十一章11.1-11.2)

    终于看到了第11章,之前虽然也有看过,但没有太仔细,在工作中也偶尔会使用,但不明白其中的原理,那现在就来讲讲LINQ,做一做书虫~~ 首先先了解下LINQ的三个要点: LINQ不能把非常复杂的查询表达 ...

  8. LINQ之路(1):LINQ基础

    本文将从什么是LINQ(What).为什么使用LINQ(Why)以及如何使用LINQ(How)三个方面来进行说明. 1.什么是LINQ LINQ(Language Integrated Query)是 ...

  9. Linq基础知识小记四之操作EF

    1.EF简介 EF之于Linq,EF是一种包含Linq功能对象关系映射技术.EF对数据库架构和我们查询的类型进行更好的解耦,使用EF,我们查询的对象不再是C#类,而是更高层的抽象:Entity Dat ...

  10. C#3.0新增功能09 LINQ 基础01 语言集成查询

    连载目录    [已更新最新开发文章,点击查看详细] 语言集成查询 (LINQ) 是一系列直接将查询功能集成到 C# 语言的技术统称. 数据查询历来都表示为简单的字符串,没有编译时类型检查或 Inte ...

随机推荐

  1. 【Unity3D基础教程】给初学者看的Unity教程(一):GameObject,Compoent,Time,Input,Physics

    作者:王选易,出处:http://www.cnblogs.com/neverdie/  欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点推荐.谢谢! Unity3D重要模块的类图 最近刚刚完成了一 ...

  2. C#访问非托管内存

    示例1:分配一个新的内存地址给新变量 Point p; // Initialize unmanged memory to hold the struct. IntPtr pnt = Marshal.A ...

  3. 类似于C# using() java 语法

    From :   https://www.infoq.com/news/2010/08/arm-blocks try(Jedis jedis = jedisPool.getResource()){ S ...

  4. javascript中的this指向问题

    在深入学习JavaScript之后,我们越来越多的会遇到函数或者在对象内部中,对于this的指向问题的疑惑,其实基本上每一个编程语言中都有一个this,这个this的指向都是大同小异,你也可以汉化它的 ...

  5. 必须使用“角色管理工具”安装或配置Microsoft .NET Framework 3.5 SP1

    在Windows Server 2008下直接安装SQL Server 2008时,会出现如下错误: 必须使用“角色管理工具”安装或配置Microsoft .NET Framework 3.5 SP1 ...

  6. jQuery入门级part.2

    一,事件编程 基本事件: blur(fn)     当失去焦点时 change(fn)  当内容发生改变时 click(fn)    当鼠标单击时 dblclick(fn)  当鼠标双击时 focus ...

  7. Hadoop学习18--yarn配置篇-基本配置节点

    <configuration> <property> <name>yarn.nodemanager.aux-services</name> <va ...

  8. 在Linux中永久设置Anaconda环境变量的方法

    [感谢:http://www.codesec.net/view/459539.html] 如果在安装Anaconda的过程中没有将安装路径添加到系统环境变量中,需要在安装后手工添加: 1.在终端输入$ ...

  9. mysql按月获取一年内每个月的数据量

    SELECT COUNT(id) AS num, DATE_FORMAT(create_time, '%Y-%m') AS createTime FROM table WHERE create_tim ...

  10. firefox与IE对js和CSS的区别(转http://log-cd.javaeye.com/blog/548665)

     ? "700px" : document.body.clientWidth>1000 ? "1000px" : "auto");// ...