public async Task <int> AddOrUpdateLink(LinkmirDbContext context) { int toReturn = 0; _link = new LinkmirLinkDbItem(Link); if (_link.IsValid()) { var link = await context.Links.FindAsync(_link.ShortLink); if (link == null) { link = _link; context.Links.Add(link); } else { link.SubmissionCount++; } await context.SaveChangesAsync(); ShortLink = link.ShortLink; toReturn = link.SubmissionCount; } return(toReturn); }
public static async Task <LinkStatsDTO> GetLinkStats(LinkmirDbContext context, string shortlink) { var link = await context.Links.FindAsync(shortlink); if (link != null) { link.AccessCount++; await context.SaveChangesAsync(); } var toReturn = new LinkStatsDTO { Link = link.Link, ShortLink = link.ShortLink, Domain = link.Domain, Subdomain = link.Subdomain, SubmissionCount = link.SubmissionCount, AccessCount = link.AccessCount }; return(toReturn); }