/// <summary> /// Ajout d'un événement via le viewModel /// </summary> /// <param name="e">Evénement à ajouter</param> /// <param name="vm">ViewModel servant de base à la création du nouvel événement</param> public static void AddEvenement(Evenement e, CreateEditEvenementVM vm) { using (ApplicationDbContext db = new ApplicationDbContext()) { GenericRepository <Evenement> rep = new GenericRepository <Evenement>(db); if (!String.IsNullOrWhiteSpace(e.Adresse)) { ServiceCartographie.geocoder(e); } List <Theme> liste = new List <Theme>(); if (vm.IdSelectedThemes != null) { foreach (var i in vm.IdSelectedThemes) { liste.Add(ServiceTheme.GetOneTheme(i, db)); } e.Themes = liste; } rep.Insert(e); } }
/// <summary> /// Edition d'un élément /// </summary> /// <param name="vm">ViewModel de base servant à la modification de l'élément existant</param> /// <param name="o">Organisateur de l'événement</param> public static void EditEvenement(CreateEditEvenementVM vm, Organisateur o) { using (ApplicationDbContext db = new ApplicationDbContext()) { EvenementRepository <ApplicationDbContext> rep = new EvenementRepository <ApplicationDbContext>(db); if (!String.IsNullOrWhiteSpace(vm.Evenement.Adresse)) { ServiceCartographie.geocoder(vm.Evenement); } List <Theme> liste = new List <Theme>(); if (vm.IdSelectedThemes != null) { foreach (var i in vm.IdSelectedThemes) { liste.Add(ServiceTheme.GetOneTheme(i, db)); } vm.Evenement.Themes = liste; } vm.Evenement.Organisateur = o; rep.Update(vm.Evenement); } }