我的ORM之二--添加

我的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之六-- 批量

posted @ 2015-05-26 13:53  NewSea  阅读(533)  评论(0编辑  收藏  举报