public async Task PersistTokenDetail(LivechatUserToken livechatUserToken) { if (string.IsNullOrEmpty(livechatUserToken.Stores)) { return; } // Formatting var stores = string.Join(",", livechatUserToken.Stores .Split(',') .Select(t => $"|{t}|")); livechatUserToken.Stores = stores; var dbToken = context.LivechatUserToken .Where(t => t.AuthToken == livechatUserToken.AuthToken && t.Device == livechatUserToken.Device && t.PushToken == livechatUserToken.PushToken && t.Stores == stores) .FirstOrDefault(); if (dbToken != null) { return; } await context.LivechatUserToken.AddAsync(livechatUserToken); await context.SaveChangesAsync(); }
public async Task RemoveTokenDetail(LivechatUserToken livechatUserToken) { var dbToken = context.LivechatUserToken .Where(t => t.AuthToken == livechatUserToken.AuthToken && t.Device == livechatUserToken.Device && t.PushToken == livechatUserToken.PushToken) .FirstOrDefault(); if (dbToken == null) { return; } context.LivechatUserToken.Remove(dbToken); await context.SaveChangesAsync(); }