private void SaveTrainingExecute() { using (var repo = new TrainingRepository()) { var existing = repo.GetById(training.Id); if (existing == null) { training = repo.Add(training); Locator.TrainingsPlanStatic.AddTraining(training); } } using (var repo = new ExersizesRepository()) { foreach (var exersize in exersizes) { exersize.TrainingId = training.Id; exersize.Id = repo.Add(exersize).Id; } } if (NavigationProvider.CanGoBack()) NavigationProvider.GoBack(); }
protected override void InitializeExecute() { base.InitializeExecute(); var parameters = NavigationProvider.GetNavigationParameters(); if (parameters.ContainsKey(Constants.NavigationParameters.TrainingId)) { int id; int.TryParse(parameters[Constants.NavigationParameters.TrainingId], out id); using (var repo = new TrainingRepository()) { Training = repo.GetById(id); } using (var repo = new ExersizesRepository()) { Exersizes = new ObservableCollection<Exersize>(repo.GetByTraining(id)); } using (var repo = new PhysicalActivityRepository()) { foreach (var item in exersizes) { item.Activity = repo.GetById(item.ActivityId); } } } if (Training == null) { Training = new Training(); Exersizes = new ObservableCollection<Exersize>(); } }