public bool RoadIsAvailable(Road road)
 {
     return(TrainingGroupXRoads.Any(p => p.Road.Id == road.Id));
 }
 public TrainingGroupXRoad RoadForGroup(Road road)
 {
     return(TrainingGroupXRoads.FirstOrDefault(p => p.Road.Id == road.Id));
 }
 private IEnumerable <TrainingGroupXRoad> GroupXRoadsWhereMemberCouldLearn(GroupMember groupMemberWithNeed)
 {
     return(TrainingGroupXRoads.Where(p => p.GroupMembersForRoad.Any(u => u.GroupMember.Id == groupMemberWithNeed.Id && u.ShouldLearn)));
 }
 public void ActivateRoad(Road road)
 {
     TrainingGroupXRoads.Add(new TrainingGroupXRoad(this, road));
 }
 private IEnumerable <TrainingGroupXRoad> GroupXRoadsContainingRoadStep(RoadStep roadStep)
 {
     return(TrainingGroupXRoads.Where(p => p.Road.RoadXRoadSteps.Any(u => u.RoadStep.Id == roadStep.Id)));
 }