public Host EnsureHostByUrl(string hosturl) { hosturl = EnsureTrailingSlash(hosturl); var hostUrlHash = GetSha256Hash(hosturl); var host = _addinDbContext.Hosts.Where(h => h.Hash == hostUrlHash).ToList().SingleOrDefault(); if (host == null) { var allHosts = _addinDbContext.Hosts.ToList().Select(h => h.ShortHandUrl).ToList(); var shortHandUrl = GetRandomString(); while (allHosts.Contains(shortHandUrl)) { shortHandUrl = GetRandomString(); } host = new Host { Hash = hostUrlHash, ShortHandUrl = shortHandUrl, Url = hosturl }; _addinDbContext.Hosts.Add(host); _addinDbContext.SaveChanges(); } return(host); }
public static void DeleteUserSessionToken(string userAuthSessionId, string provider) { using (var db = new AddInContext()) { var st = db.SessionTokens.Where(t => t.Id == userAuthSessionId && t.Provider == provider); if (st.Any()) { db.SessionTokens.RemoveRange(st); db.SaveChanges(); } } }