public async Task <Profile> Update(Profile model) { //namespaceid 0 cannot have unique nicks if (model.Uniquenick != null) { if (model.Namespaceid == 0 && model.Uniquenick.Length != 0) { model.Uniquenick = null; } } model.User = null; var tracking = gameTrackerDb.ChangeTracker.QueryTrackingBehavior; gameTrackerDb.ChangeTracker.QueryTrackingBehavior = QueryTrackingBehavior.NoTracking; var nickCheckProfileid = await PerformNickChecks(model); if (await PerformUniqueNickChecks(model) && (!nickCheckProfileid.HasValue || nickCheckProfileid.Value == model.Id)) { gameTrackerDb.ChangeTracker.QueryTrackingBehavior = tracking; var entry = gameTrackerDb.Update <Profile>(model); await gameTrackerDb.SaveChangesAsync(); return(entry.Entity); } gameTrackerDb.ChangeTracker.QueryTrackingBehavior = tracking; return(null); }
public Task <PersistKeyedData> Update(PersistKeyedData model) { return(Task.Run(async() => { var entry = gameTrackerDb.Update <PersistKeyedData>(model); await gameTrackerDb.SaveChangesAsync(); return entry.Entity; })); }
public Task <PersistData> Update(PersistData model) { return(Task.Run(async() => { model.Modified = DateTime.UtcNow; var entry = gameTrackerDb.Update <PersistData>(model); await gameTrackerDb.SaveChangesAsync(); return entry.Entity; })); }
public Task <bool> Delete(UserLookup lookup) { return(Task.Run(async() => { var users = (await Lookup(lookup)).ToList(); foreach (var user in users) { user.Deleted = true; gameTrackerDb.Update <User>(user); } var num_modified = await gameTrackerDb.SaveChangesAsync(); return users.Count > 0 && num_modified > 0; })); }