ITimeU.Models.RaceIntermediateModel.Save C# (CSharp) Method

Save() public method

Saves this instance.
public Save ( ) : bool
return bool
        public bool Save()
        {
            using (var ctx = new Entities())
            {
                var raceIntermediate = new RaceIntermediate()
                {
                    CheckpointID = CheckpointID,
                    CheckpointOrderID = CheckpointOrderID,
                    RuntimeId = RuntimeId,
                    AthleteId = AthleteId
                };
                ctx.RaceIntermediates.AddObject(raceIntermediate);
                var checkpointOrder = ctx.CheckpointOrders.Where(cpOrder => cpOrder.ID == CheckpointOrderID).Single();
                checkpointOrder.IsMerged = true;
                var runtime = ctx.Runtimes.Where(rt => rt.RuntimeID == RuntimeId).Single();
                runtime.IsMerged = true;
                try
                {
                    ctx.SaveChanges();
                }
                catch (System.Exception)
                {
                    return false;
                }
            }
            return true;
        }

Usage Example

Example #1
0
        public void It_Should_Be_Possible_To_Connect_An_Athlete_To_A_Startnumber()
        {
            Given("we have an athlete and a startnumber registrert", () =>
            {
                athlete.ConnectToRace(race.RaceId);
                timer = CreateNewTimerModelWithCheckpoints(race);
                checkpointOrder = new CheckpointOrderModel();
                checkpointOrder.AddCheckpointOrderDB(timer.CurrentCheckpointId, 1);
                timer.Start();
                timer.AddRuntime(400, timer.GetFirstCheckpointId());
                intermediate = new RaceIntermediateModel(timer.CurrentCheckpointId, checkpointOrder.ID, timer.CheckpointRuntimes[timer.CurrentCheckpointId].First().Key);
                intermediate.Save();
            });

            When("we want to connect athletes to startnumbers", () =>
            {
                RaceIntermediateModel.MergeAthletes(race.RaceId);
            });

            Then("athletes should be connected to raceintermediate", () =>
            {
                RaceIntermediateModel.GetRaceintermediatesForRace(race.RaceId).First().AthleteId.ShouldNotBeNull();

            });
        }
All Usage Examples Of ITimeU.Models.RaceIntermediateModel::Save