internal async Task <ApplicationUser> FindByIdAsync(int userId) { using (var connection = _databaseConnectionFactory.GetConnection()) { const string query = @" SELECT [Id] ,[UserName] ,[NormalizedUserName] ,[Email] ,[NormalizedEmail] ,[EmailConfirmed] ,[PhoneNumber] ,[PhoneNumberConfirmed] ,[PasswordHash] ,[SecurityStamp] ,[ConcurrencyStamp] ,[AccessFailedCount] ,[LockoutEnabled] ,[LockoutEnd] ,[TwoFactorEnabled] ,[Guid] FROM [Users] WHERE [Id] = @UserId "; var applicationUser = await connection.QuerySingleOrDefaultAsync <ApplicationUser>(query, new { @UserId = userId }); return(applicationUser); } }
public async Task <PagedResults <Tenant> > Get(Pagination pagination = null) { var dynamicParameters = new DynamicParameters(); AddPagination(pagination, dynamicParameters); var query = $@" SELECT * FROM [Tenants] {Sql.OrderWithPossiblePagination(pagination, "[Name]")} SELECT COUNT([Id]) FROM [Tenants] "; using (var connection = _databaseConnectionFactory.GetConnection()) { using (var multipleQuery = await connection.QueryMultipleAsync(query, dynamicParameters)) { var tenants = await multipleQuery.ReadAsync <Tenant>(); var totalCount = multipleQuery.ReadFirst <int>(); var result = new PagedResults <Tenant> { Items = tenants, TotalCount = totalCount }; return(result); } } }
internal async Task <IdentityResult> CreateAsync(ApplicationRole role) { using (var connection = _databaseConnectionFactory.GetConnection()) { const string query = @" INSERT INTO [Roles] ( [Name] ,[NormalizedName] ,[ConcurrencyStamp] ,[Guid]) VALUES ( @Name ,@NormalizedName ,@ConcurrencyStamp ,@Guid ); SELECT SCOPE_IDENTITY(); "; var result = await connection.QuerySingleOrDefaultAsync <int>(query, new { @Name = role.Name, @NormalizedName = role.NormalizedName, @ConcurrencyStamp = role.ConcurrencyStamp, @Guid = role.Guid }); if (result == 0) { return(IdentityResult.Failed()); } role.Id = result; return(IdentityResult.Success); } }