linq的简单增删改查
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的简单增删改查的更多相关文章
- ado.net的简单数据库操作(三)——简单增删改查的实际应用
果然,在犯困的时候就该写写博客,写博客就不困了,哈哈! 上篇我记录了自己的SqlHelper的开发过程,今天记录一下如何使用这个sqlhelper书写一个具有简单增删改查的小实例啦. 实例描述:在数据 ...
- Redis:五种数据类型的简单增删改查
Redis简单增删改查例子 例一:字符串的增删改查 #增加一个key为ay_key的值 127.0.0.1:6379> set ay_key "ay" OK #查询ay_ke ...
- 国产化之路-统信UOS + Nginx + Asp.Net MVC + EF Core 3.1 + 达梦DM8实现简单增删改查操作
专题目录 国产化之路-统信UOS操作系统安装 国产化之路-国产操作系统安装.net core 3.1 sdk 国产化之路-安装WEB服务器 国产化之路-安装达梦DM8数据库 国产化之路-统信UOS + ...
- Mybatis实现简单增删改查
Mybatis的简单应用 学习内容: 需求 环境准备 代码 总结: 学习内容: 需求 使用Mybatis实现简单增删改查(以下是在IDEA中实现的,其他开发工具中,代码一样) jar 包下载:http ...
- LinQ 创建连接、简单增删改查
LINQ--语言集成查询(Language Integrated Query)是一组用于c#和Visual Basic语言的扩展.它允许编写C#或者Visual Basic代码以查询数据库相同的方式操 ...
- [原创]Linq to xml增删改查Linq 入门篇:分分钟带你遨游Linq to xml的世界
本文原始作者博客 http://www.cnblogs.com/toutou Linq 入门篇(一):分分钟带你遨游linq to xml的世界 本文原创来自博客园 请叫我头头哥的博客, 请尊重版权, ...
- ASP.NET MVC学习---(三)EF简单增删改查
那么现在我们已经大概从本质上了解了ef 巴拉巴拉说了一大堆之后 总算要进入ef的正题了 总在口头说也太不行了是吧~ 没错,现在要用ef进行一些实际的操作 做什么呢? 就做一个入门级的增删改查操作吧 废 ...
- Android_ADB 常用 shell命令 和 sqlite3 简单增删改查
今天学习了一个ADB的常用命令.接下来简单使用几个常用ADB shell 命令. 首先我们得明白什么是adb.exe ADB -Android Debug Bridge, 是 Android sdk ...
- MyBatis之二:简单增删改查
这一篇在上一篇的基础上简单讲解如何进行增删改查操作. 一.在mybatis的配置文件conf.xml中注册xml与注解映射 <!-- 注册映射文件 --> <mappers> ...
随机推荐
- 读取XML直接转换为类对象
<?xml version="1.0" encoding="utf-8"?> <ArrayOfMenuItems xmlns:xsi=&quo ...
- AWS 免费套餐
AWS 免费套餐 转载自:https://aws.amazon.com/cn/free/?sc_channel=PS&sc_campaign=acquisition_CN&sc_pub ...
- Visual Studio跨平台开发Xamarin
台湾微软的一系列Visual Studio跨平台开发Xamarin的资料,上面还有视频.具体参看 http://www.microsoft.com/taiwan/newsletter/library/ ...
- 使用Unity3D的设计思想实现一个简单的C#赛车游戏场景
最近看了看一个C#游戏开发的公开课,在该公开课中使用面向对象思想与Unity3D游戏开发思想结合的方式,对一个简单的赛车游戏场景进行了实现.原本在C#中很方便地就可以完成的一个小场景,使用Unity3 ...
- 利用Hexo搭建个人博客-环境搭建篇
我是一个爱写博客进行总结分享的人.然而,有着热爱写博客并且深知写博客好处的我,却没有好好的把这个习惯坚持下来.如今毕业已经一年多了吧,每一次与师弟师妹们聊天,我总会意味深长的建议他们,一定要定期梳理总 ...
- ASP.NET MVC 从零开始 - 自动化部署(其一)
本文是从我的 github 博客 http://lxconan.github.io 导入的. 这是这个系列的第四篇了,前三篇请参见: ASP.NET MVC 从零开始 – Create and Run ...
- Inter Core CPU 型号的尾字母含义
Inter Core CPU 型号的尾字母含义: M:表示移动处理器(Mobile Processor):QM:四核移动处理器(Quad Mobile Processor):U:超低电压处理器(Ult ...
- Pointer's NULL And 0
问题起源 在使用Qt框架的时候, 经常发现一些构造函数 *parent = 0 这样的代码. 时间长了, 就觉的疑惑了. 一个指针不是等于NULL吗? 这样写, 行得通吗? 自己测试一下就可以了. 测 ...
- netstat
netstat再解读 C:\Users\Administrator>netstat -nb 活动连接 协议 本地地址 外部地址 状态 TCP ESTABLISHED [mysqld.exe] T ...
- Atitit 索引技术--位图索引
Atitit 索引技术--位图索引 索引在数据结构上可以分为三种B树索引.位图索引和散列索引 存储原理 编辑 位图索引对数据表的列的每一个键值分别存储为一个位图,Oracle对于不同的版本,不同的操作 ...