public async Task <User> GetUserByEmail(string email) { using var conn = new NpgsqlConnection(_connectionStrings.Postgres); conn.Open(); using var cmd = new NpgsqlCommand { Connection = conn, CommandText = @"select id, avatar_path, username, email, password_hash, password_salt, first_name, last_name, description from users where email = @p_email" }; cmd.Parameters.AddWithValue("p_email", email); var reader = await cmd.ExecuteReaderAsync(); var next = await reader.ReadAsync(); return(next ? DataReaderMappers.MapToUser(reader) : null); }
private async Task <Story> GetStoryById(Guid id) { using var conn = new NpgsqlConnection(_connectionStrings.Postgres); conn.Open(); using var cmd = new NpgsqlCommand { Connection = conn, CommandText = @"select id, user_id, image_path, image_size, date_created from stories where id = @p_id" }; cmd.Parameters.AddWithValue("p_id", id); var reader = await cmd.ExecuteReaderAsync(); var next = await reader.ReadAsync(); return(next ? DataReaderMappers.MapToStory(reader) : null); }
private async Task <Comment> GetCommentById(Guid id) { using var conn = new NpgsqlConnection(_connectionStrings.Postgres); conn.Open(); using var cmd = new NpgsqlCommand { Connection = conn, CommandText = @"select id, user_id, photo_id, text, date_created from comments where id = @p_id" }; cmd.Parameters.AddWithValue("p_id", id); var reader = await cmd.ExecuteReaderAsync(); var next = await reader.ReadAsync(); return(next ? DataReaderMappers.MapToComment(reader) : null); }
private async Task <Photo> GetPhotoById(Guid id) { using var conn = new NpgsqlConnection(_connectionStrings.Postgres); conn.Open(); using var cmd = new NpgsqlCommand { Connection = conn, CommandText = @"select id, user_id, description, geo, image_path, image_size, date_created from photos where id = @p_id and deleted = false" }; cmd.Parameters.AddWithValue("p_id", id); var reader = await cmd.ExecuteReaderAsync(); var next = await reader.ReadAsync(); return(next ? DataReaderMappers.MapToPhoto(reader) : null); }