我的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() != 1){ return "插入失败" ; } var menuId = dbo.GetLastAutoID(); ...
InsertClip.LastAutoID
代码:
var insert = dbr.Logistics.LBanCi.Insert(o => o.Id == 1 & o.Name == "abc" ); if (insert.Execute() != 1) 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() == 0) { 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之六-- 批量
![]() |
作者:NewSea 出处:http://newsea.cnblogs.com/
QQ,MSN:iamnewsea@hotmail.com 如无特别标记说明,均为NewSea原创,版权私有,翻载必纠。欢迎交流,转载,但要在页面明显位置给出原文连接。谢谢。 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端