C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 主细表事务处理的标准例子
2014-02-25 12:30
876 查看
要么就一次全成功,要么就一次全失败,插入主表的同时插入关联的子表,主表插入时返回当前插入的主键,字表插入时用这个主键做关联。
参考代码如下:
参考代码如下:
/// <summary> /// 添加角色(同时添加用户,一个数据库事务里进行处理) /// </summary> /// <param name="userInfo">用户</param> /// <param name="entity">实体</param> /// <param name="userIds">用户主键数组</param> /// <param name="statusCode">返回状态码</param> /// <param name="statusMessage">返回状态信息</param> /// <returns>主键</returns> public string AddWithUser(BaseUserInfo userInfo, BaseRoleEntity entity, string[] userIds, out string statusCode, out string statusMessage) { var parameter = ServiceParameter.CreateWithMessage(userInfo , MethodBase.GetCurrentMethod() , this.serviceName , AppMessage.RoleService_Add); string result = string.Empty; string returnCode = string.Empty; string returnMessage = string.Empty; ServiceUtil.ProcessUserCenterWriteDbWithTransaction(userInfo, parameter, (dbHelper) => { // 这里是判断已经登录的用户是否有调用当前函数的权限,加强服务层被远程调用的安全性的 var permissionManager = new BasePermissionManager(userInfo); if (permissionManager.CheckPermissionByUser(userInfo.Id, "RoleAdmin.Add", "添加角色")) { string tableName = userInfo.SystemCode + "Role"; var manager = new BaseRoleManager(dbHelper, userInfo, tableName); result = manager.Add(entity, out returnCode); if (!string.IsNullOrEmpty(result) && userIds != null && userIds.Length > 0) { tableName = userInfo.SystemCode + "UserRole"; var userManager = new BaseUserManager(dbHelper, userInfo, tableName); // 小心异常,检查一下参数的有效性 if (userIds != null) { userManager.AddToRole(userIds, result); } } returnMessage = manager.GetStateMessage(returnCode); } }); statusCode = returnCode; statusMessage = returnMessage; return result; }
相关文章推荐
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 树形选择项目的标准例子
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - .NET商业化成品成熟各种数据权限的需求对应例子代码
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 大数据分页功能改进、数据权限改进
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 大数据支持分表优化
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 客户端多网络支持
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 主管可以看下属的数据
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 忘记密码功能改进、手机短信、电子邮件
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 成熟组件化运行效果分解
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 区域管理功能增强(电子商务方向)
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 角色成员功能的改进支持公司加入到角色
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 即时消息提醒功能改进
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 用户密码安全增强
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 网络订单提醒功能,网点区域功能增强
- C#.NET 大型通用信息化系统集成快速开发平台 4.0 版本 - 导入导出Microsoft Excel 2010的例子
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 用户表的设计思想分享[教师、职工、学生]
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 远程同步服务器大量基础数据到客户端
- C#.NET 大型通用信息化系统集成快速开发平台 4.0 版本 - 标准省市县数据的公司选择窗口实现
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 严格的用户账户审核功能
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 密码强化、网络安全强化
- C#.NET 大型通用信息化系统集成快速开发平台 4.1 版本 - 增强服务安全、阻止非授权的用户非法调用