public void Save(SQLiteConnection db) { RaceResult rr = db.Find <RaceResult>(x => x.RaceResultID == this.RaceResultID); if (rr == null) { db.Insert(this); } else { db.Update(this); } }
public void CalculateResults(SQLiteConnection db) { IEnumerable <HeatTime> allHeats = this.AllHeats; foreach (Racer r in this.Racers) { RaceResult res = new RaceResult(this); res.RaceResultID = Guid.NewGuid(); res.EventID = this.EventID; res.RacerID = r.RacerID; res.AvgRaceTime = allHeats.Where(hi => hi.RacerID == r.RacerID).Average(x => x.RaceTime.Value); this.Results.Add(res); } IOrderedEnumerable <RaceResult> ioerr = this.Results.OrderBy(x => x.AvgRaceTime); int i = 1; foreach (RaceResult rr in ioerr) { rr.PlaceNumber = i; i++; } this.Results = new ObservableCollection <RaceResult>(ioerr); }