• 原生dapper中新增用户后根据用户id,在用户角色表中添加关联数据,事务处理


    var result = 0;
    var userId = 0;
    using (var db = _Sql.Connection)
    using (var tran =db.BeginTransaction())
    {
    var insertUserActionSql = @"INSERT INTO [dbo].[Base_User]
    ([UserName]
    ,[Password]
    ,[PhoneNumber]
    ,[Email]
    ,[IsDeleted]
    ,[CreateDate]
    ,[CreateUserId]
    ,[CreateUserName]
    ,[ModifyDate]
    ,[ModifyUserId]
    ,[ModifyUserName])
    VALUES
    (@UserName
    ,@Password
    ,@PhoneNumber
    ,@Email
    ,@IsDeleted
    ,@CreateDate
    ,@CreateUserId
    ,@CreateUserName
    ,@ModifyDate
    ,@ModifyUserId
    ,@ModifyUserName); SELECT CAST(SCOPE_IDENTITY() AS BIGINT) AS [UserId] "; //必须这么写才行 不能用@@identity 方式,dapper不支持 

    var insertUserRoler = @" INSERT INTO [dbo].[Base_UserRole]([UserId],[RoleId]) VALUES(@UserId,@RoleId)";
    try
    {

    userId = db.ExecuteScalar<int>(insertUserActionSql, editViewModel, tran);

    result = db.Execute(insertUserRoler, new { UserId = userId, RoleId = editViewModel.RoleId },tran);
    tran.Commit();
    }
    catch (SqlException ex)
    {
    tran.Rollback();
    LogHelper.AddErrorLog("Create", this.GetType(), ex);
    return false;
    }
    catch (Exception ex)
    {
    tran.Rollback();
    LogHelper.AddErrorLog("Create", this.GetType(), ex);
    return false;
    }
    }//end using
    return result > 0;

  • 相关阅读:
    DOM--3 DOM核心和DOM2 HTML(3)
    js-其他
    DOM--3 DOM核心和DOM2 HTML(2)
    DOM--3 DOM核心和DOM2 HTML(1)
    插入视频(youtube)
    DOM--2 创建可重用的对象
    safari的坑
    DOM--1 遵循最佳实践
    mvc-5视图和模版
    mvc-4控制器和状态(2)
  • 原文地址:https://www.cnblogs.com/Tom-yi/p/7743220.html
Copyright © 2020-2023  润新知