public ActionResult Index(ArticleViewModel articleViewModel)
        {
            if (!ModelState.IsValid)
            {
                return RedirectToAction("Index");
            }
            else
            {
                //on récupère l'utilisateurCourant
                var pseudoUtilisateurCourant = UtilisateurService.GetUtilisateurCourantPseudo();
                var utilisateurCourant = UtilisateurService.GetEntityByPseudo(pseudoUtilisateurCourant.Valeur);

                var createArticleCommand = new CreateArticleCommand { Contenu = articleViewModel.Contenu, Date = DateTime.Now, Titre = articleViewModel.Titre, TypeArticleId = articleViewModel.TypeArticleId, EmployeId = utilisateurCourant.Valeur.Id };
                var result = ArticlService.CreateArticle(createArticleCommand);
                if (result.IsValid)
                {
                    TempData["Message"] = "L article a ete cree avec succes !";
                    return RedirectToAction("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");
                }
            }
        }
Esempio n. 2
0
 public Resultat<Article> CreateArticle(CreateArticleCommand command)
 {
     return Resultat<Article>.SafeExecute<ArticleService>(
          result =>
          {
              var article = new Article { TypeArticleId=command.TypeArticleId, Contenu=command.Contenu, Date=DateTime.Now, EmployeId=command.EmployeId, Titre=command.Titre};
              context.Articles.AddObject(article);
              context.SaveChanges();
          });
 }