public async Task <bool> DeleteStartListMember(int raceId, int skierId, int runNo) { return(await Task.Run(() => { var startlistAdo = new AdoStartListDao(connectionFactory); var raceDataAdo = new AdoRaceDataDao(connectionFactory); var racedata = raceDataAdo.FindAllBySkierId(skierId).FirstOrDefault(rd => rd.RaceId == raceId); if (!raceDataAdo.Delete(racedata)) { return false; } var race = new Race { Id = raceId }; var startList = new StartListMember { Race = race, SkierId = skierId, RunNo = runNo }; return startlistAdo.Delete(startList); })); }
public async Task <bool> InsertStartListMember(int raceId, int skierId, int runNo, int startPosition) { return(await Task.Run(() => { var startListAdo = new AdoStartListDao(connectionFactory); var raceDataAdo = new AdoRaceDataDao(connectionFactory); var oldRaceData = raceDataAdo.FindAllBySkierId(skierId).FirstOrDefault(rd => rd.RaceId == raceId); if (oldRaceData != null) { raceDataAdo.Delete(oldRaceData); } var newRaceData = new RaceData() { RaceId = raceId, SkierId = skierId, Blocked = true, Disqualified = false, Finished = false, Running = false }; if (raceDataAdo.Insert(newRaceData) == 0) { return false; } var race = new Race { Id = raceId }; var startListMember = new StartListMember { Race = race, SkierId = skierId, RunNo = runNo, StartPos = startPosition }; return startListAdo.Insert(startListMember) != 0; })); }