예제 #1
0
        public ActionResult Categorie(IList<CategorieViewModel> categorieViewModel)
        {
            if (!ModelState.IsValid)
            {
                return Redirect("Index");
            }
            else
            {
                //On récupère l'utilisateur courant
                var pseudo = UtilisateurService.GetUtilisateurCourantPseudo().Valeur;
                var utilisateurCourant = UtilisateurService.GetEntityByPseudo(pseudo);

                // On crée la commande
                // A l'ancienne cousin !
                var createCategorieCommand = new CreateCategorieCommand { CreateurId = utilisateurCourant.Valeur.Id, DateCreation = DateTime.Now, Nom = categorieViewModel[0].TitreNewCategorie };
                var result = ForumService.CreateCategorie(createCategorieCommand);

                if (result.IsValid)
                {
                    return Redirect("Index");
                }
                else
                {
                    //Pour les dev
                    foreach (var erreur in result.Erreurs)
                    {
                        ModelState.AddModelError(erreur.ExecutionException.Source, erreur.ExecutionException);
                    }

                    //Pour les gens (affiche la page error.cshtml
                    throw new Exception("Erreur inattendue dans l'application");
                }
            }
        }
예제 #2
0
 public Resultat<Categorie> CreateCategorie(CreateCategorieCommand command)
 {
     return Resultat<Categorie>.SafeExecute<ForumService>(
          result =>
          {
              var categorie = new Categorie { Nom = command.Nom, CreateurId = command.CreateurId, DateCreation = command.DateCreation };
              context.Categories.AddObject(categorie);
              context.SaveChanges();
          });
 }