public void InsertRoleQueryWithoutIdGeneratesCorrectQuery() { var generatedQuery = _queryFactory.GetInsertQuery <InsertRoleQuery, CustomDapperIdentityRole>(new CustomDapperIdentityRole()); var expected = "INSERT INTO \"dbo\".\"IdentityRole\" (\"Dummy\", \"Name\") VALUES(@Dummy, @Name)"; Assert.Equal(expected, generatedQuery); }
public void InsertRoleQueryWithoutIdGeneratesCorrectQuery() { var generatedQuery = _queryFactory.GetInsertQuery <InsertRoleQuery, CustomDapperIdentityRole>(new CustomDapperIdentityRole()); const string expected = "INSERT INTO [dbo].[IdentityRole] ([Dummy], [Name]) VALUES(@Dummy, @Name)"; Assert.Equal(expected, generatedQuery); }
public void InsertRoleQueryWithoutIdGeneratesCorrectQuery() { var generatedQuery = _queryFactory.GetInsertQuery <InsertRoleQuery, CustomDapperIdentityRole>(new CustomDapperIdentityRole()); const string expected = @"INSERT INTO `identity`.`identityrole` (`Dummy`, `Name`) VALUES(@Dummy, @Name)"; Assert.Equal(expected, generatedQuery); }
public async Task <string> InsertAsync(IdentityUser user, CancellationToken cancellationToken) { try { var insertFunction = new Func <DbConnection, Task <string> >(async x => { try { var dynamicParameters = new DynamicParameters(user); var query = _queryFactory.GetInsertQuery <InsertUserQuery, IdentityUser>(user); var result = await x.ExecuteScalarAsync <string>(query, dynamicParameters, _unitOfWork.Transaction); return(result); } catch (Exception ex) { Logging.LogException(ex); throw; } }); DbConnection conn = null; if (_unitOfWork?.Connection == null) { using (conn = _connectionProvider.Create()) { await conn.OpenAsync(cancellationToken); return(await insertFunction(conn)); } } else { conn = _unitOfWork.CreateOrGetConnection(); return(await insertFunction(conn)); } } catch (Exception ex) { Logging.LogException(ex); throw; } }
public void InsertUserClaimQueryGeneratesCorrectQuery() { var generatedQuery = _queryFactory.GetInsertQuery <InsertUserClaimQuery, DapperIdentityUserClaim <int> >(new DapperIdentityUserClaim <int>()); const string expected = "INSERT INTO `identity`.`identityuserclaim` (`ClaimType`, `ClaimValue`, `UserId`) VALUES(@ClaimType, @ClaimValue, @UserId)"; Assert.Equal(expected, generatedQuery); }
public void InsertUserClaimQueryGeneratesCorrectQuery() { var generatedQuery = _queryFactory.GetInsertQuery <InsertUserClaimQuery, DapperIdentityUserClaim <int> >(new DapperIdentityUserClaim <int>()); const string expected = "INSERT INTO \"dbo\".\"IdentityUserClaim\" (\"ClaimType\", \"ClaimValue\", \"UserId\") VALUES(@ClaimType, @ClaimValue, @UserId)"; Assert.Equal(expected, generatedQuery); }
public void InsertUserClaimQueryGeneratesCorrectQuery() { var generatedQuery = _queryFactory.GetInsertQuery <InsertUserClaimQuery, DapperIdentityUserClaim <int> >(new DapperIdentityUserClaim <int>()); const string expected = "INSERT INTO [dbo].[IdentityUserClaim] ([ClaimType], [ClaimValue], [UserId]) VALUES(@ClaimType, @ClaimValue, @UserId)"; Assert.Equal(expected, generatedQuery); }
public async Task <bool> InsertAsync(TRole role, CancellationToken cancellationToken) { try { var insertFunction = new Func <DbConnection, Task <bool> >(async x => { var dynamicParameters = new DynamicParameters(role); var query = _queryFactory.GetInsertQuery <InsertRoleQuery, TRole>(role); var result = await x.ExecuteAsync(query, dynamicParameters, _unitOfWork.Transaction); return(result > 0); }); DbConnection conn = null; if (_unitOfWork?.Connection == null) { using (conn = _connectionProvider.Create()) { await conn.OpenAsync(cancellationToken); return(await insertFunction(conn)); } } else { conn = _unitOfWork.CreateOrGetConnection(); return(await insertFunction(conn)); } } catch (Exception ex) { _log.LogError(ex, ex.Message); throw; } }
public virtual async Task <T> InsertAsync(T entity, CancellationToken cancellationToken, bool firstLevelOnly = false) { try { var insertFunction = new Func <DbConnection, Task <T> >(async x => { var dynamicParameters = new DynamicParameters(entity); var query = _queryFactory.GetInsertQuery <InsertQuery, T>(entity); var result = await x.QuerySingleAsync <int>(query, dynamicParameters, _unitOfWork.Transaction); ((IEntity)entity).IdValue = result; if (!firstLevelOnly) { await HandleChildObjects(entity, cancellationToken); } return(entity); }); DbConnection conn = null; if (_unitOfWork?.Connection == null) { using (conn = _connectionProvider.Create()) { await conn.OpenAsync(cancellationToken); return(await insertFunction(conn)); } } else { conn = _unitOfWork.CreateOrGetConnection(); return(await insertFunction(conn)); } } catch (Exception ex) { Logging.LogException(ex); throw; } }