我的ORM之二--添加
添加的语法:
var 影响行数 = dbr.表.Insert(实体).Execute();
实体类型
1. 任何C#类。
如:public class Entity{ public string Name{get;set;} .... }
2. 字典
3. WhereClip 表达式
dbr.Menu.Insert(o=>o.Name == "系统管理" & o.Url == "~/Sys/List").Execute();
取增加后的自增值:
dbo.GetLastAutoID();
这是最简单的方法,写法很顺畅,推荐使用。
它是线程安全的。它返回当前线程最近一次插入实体的自增值。
代码:
if(dbr.Menu.Insert(entity).Execute() != ){
return "插入失败" ;
}
var menuId = dbo.GetLastAutoID();
...
InsertClip.LastAutoID
代码:
var insert = dbr.Logistics.LBanCi.Insert(o => o.Id == 1 & o.Name == "abc" );
if (insert.Execute() != ) return "没有插入成功";
var id = insert.LastAutoID;
在实体类上直接获取
var orderEntity = dbr.Logistics.LogisticsOrder._;
orderEntity.BanCiID = Tend.BanCiID;
orderEntity.Number = SuppGoods.Number;
orderEntity.BanCiDetailID = Tend.BanCiDetailID; if (dbr.Logistics.LogisticsOrder.Insert(orderEntity).Execute() == )
{
return "插入订单失败";
} var orderID = orderEntity.Id;
指定SQL的添加列
dbr.PUser.Insert(new PUserRule.Entity()).ResetColumns(o => o.Id & o.Name ).Execute();
或:
dbr.PUser.Insert(new PUserRule.Entity()).RemoveColumns(o => new SimpleColumn[] { o.Mobile }).Execute();
批量添加:见: 我的ORM之六-- 批量
我的ORM之二--添加的更多相关文章
- c#一步一步实现ORM(二)
c#一步一步实现ORM(二) 上一篇描述了简单的思路,这一片我们来稍微细化一下 1插入的时候忽略某些字段 public int Insert<T>(T o, params string[] ...
- {django模型层(二)多表操作}一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询、分组查询、F查询和Q查询
Django基础五之django模型层(二)多表操作 本节目录 一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询.分组查询.F查询和Q查询 六 xxx 七 ...
- Asp.Net MVC4.0 官方教程 入门指南之二--添加一个控制器
Asp.Net MVC4.0 官方教程 入门指南之二--添加一个控制器 MVC概念 MVC的含义是 “模型-视图-控制器”.MVC是一个架构良好并且易于测试和易于维护的开发模式.基于MVC模式的应用程 ...
- 学习ASP.NET Core Razor 编程系列二——添加一个实体
在Razor页面应用程序中添加一个实体 在本篇文章中,学习添加用于管理数据库中的书籍的实体类.通过实体框架(EF Core)使用这些类来处理数据库.EF Core是一个对象关系映射(ORM)框架,它简 ...
- ORM的记录添加和删除
记录查询包括:跨表查询(重点), 分组查询,聚合查询, F与Q查询 查询之前需要先添加数据: 一对多添加: def addrecord(request): Book.objects.create( ...
- 【ASP.NET程序员福利】打造一款人见人爱的ORM(二)
上一篇我已经给大家介绍AntORM的框架[ASP.NET程序员福利]打造一款人见人爱的ORM(一),今天就来着重介绍一下如何使用这套框架 1>AntORM 所有成员 如果你只想操作一种数据库,可 ...
- 自己开发轻量级ORM(二)
上一篇简单的对轻量级ORM开发开了个头.这篇主要聊下ORM框架的设计思路. ORM本质上是对数据库操作的抽象.大体上我将其分为对数据结构的抽象和对执行方法的抽象. 我的ORM设计图: ORM框架需要完 ...
- ORM(二)常用字段小记
常用字段类型: AutoField:字段自增,多用于ID主键字段,每个表中只能有一个AutoField字段类型. id = models.AutoField(primary_key=True) # 设 ...
- 手把手教你写一个java的orm(二)
创建映射关系 想要实现一个orm的功能,我觉得就是要将class和数据库中的表创建映射关系.把class的名称和表的名称,class属性名称和表的字段名称,属性类型与表的字段类型一一对应起来.可以 ...
随机推荐
- 九月二十八JS验证
js表单验证 js可用发来在数据被送往服务器前对HTML表单中的这些输入数据进行验证 被js验证的这些典型的表单数据有: >用户是否已填写表单中的必填项目: >用户输入的邮件地址是否是合法 ...
- ExtJs知识点概述
1.前言 ExtJS的前身是YUI(Yahoo User Interface).经过不断的发展与改进,ExtJS现在已经成功发布到了ExtJS 6版本,是一套目前最完整和最成熟的javascript基 ...
- 【转载】PHP 开发者该知道的 5 个 Composer 小技巧
Composer是新一代的PHP依赖管理工具.其介绍和基本用法可以看这篇<Composer PHP依赖管理的新时代>.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方 ...
- 读Windows核心编程-5-作业
作业(Job) 有时候需要把一些进程集中管理,如终止一个进程以及它产生的子进程,但由于Windows并没有维护进程间父子关系,所以除非进程本身以某种方式记录这些信息,否则很难做到管理这种父子进程树.而 ...
- 学习codeIgniter的一点小感受
用CI好几天了,最终还是放弃用CI做完整的项目,感觉CI在前后端的交互上还比较差,比如说用户表单验证,仍然是需要把数据提交给服务器之后才能显示逻辑判断的结果.而这一点明显是相对落后了. 但不可否认CI ...
- jsp_内置对象_request
request内置对象是使用最多的一个对象,其主要作用是接收客户端发送来的请求信息.如请求的参数.发送的头信息等都属于客户端发送来的信息.request是javax.servlet.http.Http ...
- 使用CSS设置行间距,字间距.
字间距1.text-indent设置抬头距离css缩进即对,对应div设置css样式text-indent : 20px; 缩进了20px 2.letter-spacing来设置字与字间距_字符间距离 ...
- Python爬虫入门案例:获取百词斩已学单词列表
百词斩是一款很不错的单词记忆APP,在学习过程中,它会记录你所学的每个单词及你答错的次数,通过此列表可以很方便地找到自己在记忆哪些单词时总是反复出错记不住.我们来用Python来爬取这些信息,同时学习 ...
- 通过inflate获取布局,设置layoutparams无效
给ll——addtiem当设置layoutparams无效时,试着修改上一个布局的属性
- eclipse 配色方案
http://www.blogjava.net/kuuyee/archive/2013/02/26/395728.html