程序后台写事务

1.db.Database.BeginTransaction();

2.

public Result AddActivityProduct(ActivityRuleProductViewModel model)
{
Result result = new Result();
using (var tran = this.BeginTransaction())
{
try
{
var rule = CreatRule(model);
var ruled = db.Set<Shop_ActivityRuleProduct>().Add(rule);

var ladders = CreateLadders(model, rule);
var laddereds = db.Set<Shop_ActivityRuleLadder>().AddRange(ladders);

if (model.Ladder.All(item => item.Gifts != null && item.Gifts.Any()))
{
var gifts = CreateGifts(model.Ladder);
var gifted = db.Set<Shop_ActivityPresentProduct>().AddRange(gifts);
}

if (model.ActivityProduct != null && model.ActivityProduct.Any())
{
var products = CreateActivityProduct(model, ruled);
var producted = db.Set<Shop_ActivityParticipationProduct>().AddRange(products);
}

result.IsSucceed = db.SaveChanges() > 0;
tran.Commit();
}
catch (DbEntityValidationException ex)
{
tran.Rollback();
result.IsSucceed = false;
result.Message = ex.Message;
}
catch (Exception ex)
{
tran.Rollback();
result.IsSucceed = false;
result.Message = ex.Message;
}
}
return result;
}

时间: 2024-11-08 18:15:10

程序后台写事务的相关文章

excel导出的时候从程序后台写到excel里的是文本,所以无法在excel中计算怎么办?

文章引用自:http://www.cnblogs.com/rayray/p/3414452.html 需要导出到excel中的是数字类型的可以直接计算, Object param = params.get(i); if (param instanceof Integer) { int value = ((Integer) param).intValue(); prepStatement.setInt(i + 1, value); } else if (param instanceof Strin

基于JAVA WEB技术旅游服务网站系统设计与实现网上程序代写

基于JAVA WEB技术旅游服务网站系统设计与实现网上程序代写 专业程序代写服务(QQ:928900200) 随着社会的进步.服务行业的服务水平不断发展与提高,宾馆.酒店.旅游等服务行业的信息量和工作量日益变大,而传统的人工管理方式已经远远不能满足现在旅游的服务方式.传统的旅游方式经分析其有诸多的缺陷,存在数据维护效率低下,不易保管,容易丢失和出错.同时查询也不方便,劳动力成本过高导致的旅游资源信息不方便,也在一定程度上导致了对各种信息反应缓慢,容易丧失商机.为了弥补上述缺陷,便于开展旅游预订工

微信小程序后台返回大量多余数据的处理

台接口返回一个数组,数组里面N多对象,每个对象里面几十上百条数据,最好玩的是,我只需要每个对象里面的某两个数据.... 类似这种: datas:[   {   id:1000,   name: "帅哥",   title: '...',   b: '...',   d: 0,   f:0,   ....   },   {   id:1001,   name: "美女",   title: '...',   b: '...',   d: 0,   f:0,   ...

程序中使用事务来管理sql语句的执行,执行失败时,可以达到回滚的要求。

1.设置使用事务的SQL执行语句 1 /// <summary> 2 /// 使用有事务的SQL语句 3 /// </summary> 4 /// <param name="sql"></param> 5 /// <param name="conn"></param> 6 /// <param name="tran"></param> 7 /// &l

C++程序代写实现HashSet class

C++程序代写实现HashSet class 专业程序代写(QQ:928900200) Implement a HashSet class for elements of type string.It has the following functions: bool add(const string &)bool contains(const string &) constint size() constIn this exercise, you need to implement so

程序员写给同事的一封信

当你看到这瓶冠生园蜂蜜后 也许你会惊讶,哎?这里咋么会有瓶冠生园蜂蜜呢? 也许你会好奇,想问问旁边的人,这是谁的? 也许你会怀疑,我不是用完后还没有去买新的,咋么这里会有新的呢?是我的还是别人的呢? 也许你会这么想,难道有人在暗恋我?没错,你想的很正确,确实是有人在暗恋你,喜欢你,而且关注你有段时间了. 也许你会问,他为什么会关注我呢? 那,就让我来给你答案 是因为有一次你去接水,但是你发现桶里没有水了,准备去换时,刚好我也去接水. 就在那刻使我下意识的开始关注你了. 也许你会问,他为什么会暗恋

java图形图像SVG转PPM程序代写 qq:928900200

Background Many image file formats encode image data as a 2-D matrix or raster of pixel colors. The amount of available color information is fixed by the image's width and height of its resolution. If the resolution is too small, you will have proble

幸福村站——成都传智播客程序员写出你的烧烤代码

又是一个阳光明媚,风和日丽之天,如果作为程序员的你还在键盘上苦苦的想着下一串代码该怎么写的话,那你就弱爆了.俗语说得好,学习要劳逸结合,写代码更是需要清晰的思维,在传智播客Java基础班开班一个月后,班主任决定带着这群"猿猴们"去传说中的"幸福村"放松放松,我们也跟着一起去感受程序员们的烧烤代码的幸福吧! 带着好奇的心理走进了"幸福梅林站",一个又一个的农家乐园开始浮现在我们眼前,那里朴素的民风和美丽的风景让我们暂时忘却了学习上的烦恼和城市里的喧

二叉树程序代写

1.系统说明  输入一个正整数N,然后随机产生N个整数,创建一个二叉树(左子树≤父节点≤右子树).  使用Windows程序设计,在窗体的客户区自动地画出创建二叉树的过程,并动画演示中序遍历.2.系统要求  自动计算每个节点的坐标,节点圆的半径可设置,节点间的距离可设置,左右子树的角度可设置:  二叉树的大小可能超出窗体客户区的大小,因此需设立窗体的水平与垂直的滚动条:  动画演示遍历时,标出节点的顺序.二叉树程序代写,布布扣,bubuko.com