Linq
高集成化的数据访问类,它会自动映射数据库结构,将表名完整映射成为类名,将列名完整映射成字段名
数据库数据访问,能大大减少代码量。(反正最后结果就是不用写ado.Net那一套增删改查,有一套封装好的方法直接点就行了)
(1)Linq创建
添加LINQ to SQL类,类名需与要连接的数据库名一样

Linq文件是dbml结尾,一个数据库对应一个Linq文件,比如送你要连接data0720这个数据库,linq的名字也取data0720
(2)数据库连接
打开服务器资源管理器,点击下图黄圈内按钮,连接到数据库,弹出添加连接对话框,填写服务器名(.),选择使用什么身份验证,然后您要连接的数据库,然后将您要用的数据库拉到类中。(这里就相当于ado.Net里的连接语句)

(3)数据扩展

新建一个部分类(关键字:partial),例如User

public string SexStr
{
get
{
string end = "<暂无>";//只是从严谨的角度讲,数据库里不一定填写,数据创建时是not null的话大概就不用写了吧...
if (this._Sex != null)
{
end = Convert.ToBoolean(this._Sex) ? "男" : "女";
}
return end;
}
}
public string NationName
{
get
{
return this.Nation1.NationName;//这里这个Nation1是因为自动生成时重名而导致的。
                         //这里分开写的话就是 Nation n= this.Nation1; return n.NationName;
}                   //这个数据库里的中User表中的Nation被Nation表约束,根据主外键关系可以不用再单独写查询方法(当然写也可以,亲测)
   }
public string BirStr
{
  get {
      string end = "<暂无>";
      if(this._Birthday!=null)
        {
          end = Convert.ToDateTime(this._Birthday).ToString("yyyy年MM月dd日");
        } return end;
    }
} User数据扩展

  

(4)增删改查

首先实例化:

 WebDataContext con = null;//Web为建的Linq类名(也就是数据库的名字,因为他俩名字一样)
2 public UserData()
3 {
4 con = new WebDataContext();
5 }

一、查所有

public List<User> Select()  {  return con.User.ToList(); } //User为对象名,即表名,下同。这里相当于遍历了Users表里的所有数据添加进一个泛型集合里

二、添加

1 public void Insert(User u)
2 {
3 con.User.InsertOnSubmit(u);
4 con.SubmitChanges();//执行了这句话才完成了对数据库数据的变更
5 }

三、查一条

 public User Select(string uname)
{
return con.User.Where(r => r.UserName == uname).FirstOrDefault();//lamdba表达式这里就可以理解为是一个查询语句,where之后是查询条件,r就是个代号,可以随便起
}

四、删除

public void Delete(string uname)
{
//1先将对象查出来
User u = con.User.Where(r => r.UserName == uname).FirstOrDefault(); //2删掉
if (u != null)
{
con.User.DeleteOnSubmit(u);
con.SubmitChanges();
}
}

五、修改

 public void Update(User u)
{
User uuu = con.User.Where(r => r.UserName == u.UserName).FirstOrDefault();//先查后改
if (uuu != null)
{
uuu.PassWord = u.PassWord;
uuu.NickName = u.NickName;
uuu.Sex = u.Sex;
uuu.Birthday = u.Birthday;
uuu.Nation = u.Nation;
} con.SubmitChanges(); }

linq的简单增删改查的更多相关文章

  1. ado.net的简单数据库操作(三)——简单增删改查的实际应用

    果然,在犯困的时候就该写写博客,写博客就不困了,哈哈! 上篇我记录了自己的SqlHelper的开发过程,今天记录一下如何使用这个sqlhelper书写一个具有简单增删改查的小实例啦. 实例描述:在数据 ...

  2. Redis:五种数据类型的简单增删改查

    Redis简单增删改查例子 例一:字符串的增删改查 #增加一个key为ay_key的值 127.0.0.1:6379> set ay_key "ay" OK #查询ay_ke ...

  3. 国产化之路-统信UOS + Nginx + Asp.Net MVC + EF Core 3.1 + 达梦DM8实现简单增删改查操作

    专题目录 国产化之路-统信UOS操作系统安装 国产化之路-国产操作系统安装.net core 3.1 sdk 国产化之路-安装WEB服务器 国产化之路-安装达梦DM8数据库 国产化之路-统信UOS + ...

  4. Mybatis实现简单增删改查

    Mybatis的简单应用 学习内容: 需求 环境准备 代码 总结: 学习内容: 需求 使用Mybatis实现简单增删改查(以下是在IDEA中实现的,其他开发工具中,代码一样) jar 包下载:http ...

  5. LinQ 创建连接、简单增删改查

    LINQ--语言集成查询(Language Integrated Query)是一组用于c#和Visual Basic语言的扩展.它允许编写C#或者Visual Basic代码以查询数据库相同的方式操 ...

  6. [原创]Linq to xml增删改查Linq 入门篇:分分钟带你遨游Linq to xml的世界

    本文原始作者博客 http://www.cnblogs.com/toutou Linq 入门篇(一):分分钟带你遨游linq to xml的世界 本文原创来自博客园 请叫我头头哥的博客, 请尊重版权, ...

  7. ASP.NET MVC学习---(三)EF简单增删改查

    那么现在我们已经大概从本质上了解了ef 巴拉巴拉说了一大堆之后 总算要进入ef的正题了 总在口头说也太不行了是吧~ 没错,现在要用ef进行一些实际的操作 做什么呢? 就做一个入门级的增删改查操作吧 废 ...

  8. Android_ADB 常用 shell命令 和 sqlite3 简单增删改查

    今天学习了一个ADB的常用命令.接下来简单使用几个常用ADB shell 命令. 首先我们得明白什么是adb.exe ADB -Android Debug Bridge, 是 Android sdk ...

  9. MyBatis之二:简单增删改查

    这一篇在上一篇的基础上简单讲解如何进行增删改查操作. 一.在mybatis的配置文件conf.xml中注册xml与注解映射 <!-- 注册映射文件 --> <mappers> ...

随机推荐

  1. Github上传代码菜鸟超详细教程

      最近需要将课设代码上传到Github上,之前只是用来fork别人的代码. 这篇文章写得是windows下的使用方法. 第一步:创建Github新账户 第二步:新建仓库 第三部:填写名称,简介(可选 ...

  2. F.I.S初探(前端工程化)

    云笔记:http://note.youdao.com/share/?id=7c4a2dcf118f0ad7bb52a36aaee46a7a&type=note   一.初识FIS 在做项目中遇 ...

  3. 推荐升级ASP.NET Web API 2

    ASP.NET Web API 使用很长时间了,期间也碰到不少问题,升级到WebAPI2后这些问题都解决了,稳定性方面也提升不少,所以推荐使用.碰到的问题是下面的2类: 1.multipart/for ...

  4. Creating a Clean, Minimal-Footprint ASP.NET WebAPI Project with VS 2012 and ASP.NET MVC 4

    Creating a Clean, Minimal-Footprint ASP.NET WebAPI Project with VS 2012 and ASP.NET MVC 4 Building O ...

  5. IIS发布站点错误收集(持续更新)

    本文主要收集IIS在发布站点过程中遇到的错误,并提供解决办法.并亲测可行.如果您也在使用IIS发布站点的过程中遇到了一些问题,欢迎留言提问. (1.) HTTP错误500.21-Internal Se ...

  6. 【PRINCE2是什么】PRINCE2认证之七大原则(4)

    我们先来回顾一下,PRINCE2七大原则分别是持续的业务验证,经验学习,角色与责任,按阶段管理,例外管理,关注产品,剪裁. 第四个原则:按阶段管理. 阶段管理其实是给高层提供了项目生命周期中相对应的控 ...

  7. LInux 安装东西

    本机   PHP 安装 ./configure --prefix=/usr/local/php5 --with-gd --enable-gd-native-ttf --enable-gd-jis-co ...

  8. C#事件

    事件(event),这个词儿对于初学者来说,往往总是显得有些神秘,不易弄懂.而这些东西却往往又是编程中常用且非常重要的东西.大家都知道windows消息处理机制的重要,其实C#事件就是基于window ...

  9. Distributed4:SQL Server 分布式数据库性能测试

    我使用三台SQL Server 2012 搭建分布式数据库,将一年的1.4亿条数据大致均匀存储在这三台Server中,每台Server 存储4个月的数据,Physical Server的配置基本相同, ...

  10. 获取URL最后一个 ‘/’ 之后的字符

    在开发项目的过程中,经常遇到需要解析论坛,博客等的URL的问题,比如:'abc/def/jkl' 或 'abc/def/jkl/',获取最后一个‘/’之后的所有字符‘jkl’,由于特殊字符'/'的个数 ...