Пример #1
0
        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);
            }
        }
Пример #2
0
        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);
        }