public async Task <int> DeleteAsync(Ulinker existingUrl) { using var connection = new NpgsqlConnection(_urlSettings.ConnString); var affectedRows = await connection.DeleteAsync <Ulinker>(existingUrl); return(affectedRows); }
/// <summary> /// Maps the Url Request object to the Domain Entities /// </summary> /// <param name="urlRequest"></param> /// <returns>Ulinker object</returns> private async Task <Ulinker> mapToDomainAsync(string originalUrl) { string shortUrlName = await GenerateShortName(); var baseUrl = $"{_accessor.HttpContext.Request.Scheme}://{_accessor.HttpContext.Request.Host.Value.ToString()}"; var newUrl = new Ulinker { id = Guid.NewGuid(), UrlShortName = shortUrlName, OriginalUrl = originalUrl, ShortenUrl = $"{baseUrl}/{shortUrlName}", createdDate = DateTimeOffset.UtcNow.DateTime }; return(newUrl); }
public async Task CreateUrlAsync(Ulinker newUrl) { //using var connection = new NpgsqlConnection(_configuration.GetConnectionString("DefaultConnection")); using var connection = new NpgsqlConnection(_urlSettings.ConnString); await connection.InsertAsync <Ulinker>(newUrl); }