|
@@ -0,0 +1,47 @@
|
|
|
|
|
+Mode d'emploi du projet modèle MVC-entity
|
|
|
|
|
+
|
|
|
|
|
+*-*-*-*-*-*
|
|
|
|
|
+historique
|
|
|
|
|
+v0.1 13/07/2016 (Julien Legrand) : 1ère version
|
|
|
|
|
+*-*-*-*-*-*
|
|
|
|
|
+
|
|
|
|
|
+# Actions à faire après copie
|
|
|
|
|
+1. Renommer les projets en suivant ce schéma : "CD67.[nom appli].[Entity/Factory/MVC/Tests/Batchs]"
|
|
|
|
|
+2. Renommer également les assemblies et espaces de nom de chaque projet (dans les propriétés des projets, onglet "Application")
|
|
|
|
|
+
|
|
|
|
|
+x. Supprimer les fichiers Exemples :
|
|
|
|
|
+- CD67.ModeleMVC.Entity\Extend\PARAM.cs
|
|
|
|
|
+
|
|
|
|
|
+10. supprimer ce fichier pour ne pas que l'on sache que vous avez utilisé un modèle
|
|
|
|
|
+
|
|
|
|
|
+# Description générale
|
|
|
|
|
+La solution est consituée de 4 projets :
|
|
|
|
|
+- CD67.ModeleMVC.Entity : Projet qui contient les objets métiers, c'est à dire dans le cas de projets Entity : le modèle entity framework
|
|
|
|
|
+- CD67.ModeleMVC.Factory : Projet qui contient les classes permettant la gestion des objets : les actions CRUD pour chacun à minima
|
|
|
|
|
+- CD67.ModeleMVC.MVC : Projet qui comprent le site Web MVC
|
|
|
|
|
+- CD67.ModeleMVC.Tests : Tests unitaires
|
|
|
|
|
+
|
|
|
|
|
+# CD67.ModeleMVC.Entity
|
|
|
|
|
+Le modèle se nomme par défaut "EntityModel"
|
|
|
|
|
+
|
|
|
|
|
+Le dossier "Extend" contient les extensions éventuelles de classe Entity (qui se trouvent dans "EntityModel.edmx\EntityModel.tt\").
|
|
|
|
|
+C'est notamment utile pour ajouter les DataAnnotations permettant de décrire le données en vue d'une génération de contrôles plus appropiés dans les vues MVC.
|
|
|
|
|
+Attention à bien surveiller l'espace de noms lors de la création d'une classe dans ce sous-dossier (erreur fréquente) :
|
|
|
|
|
+- par défaut ce sera : "CD67.ModeleMVC.Entity.Extend",
|
|
|
|
|
+- mais il faut "CD67.ModeleMVC.Entity" (le même que les classes de bases Entity).
|
|
|
|
|
+
|
|
|
|
|
+Le dossier "Internal" contient :
|
|
|
|
|
+- "FormattedDbEntityValidationException.cs" : classe héritée de Exception qui permet un affichage plus complet dans les messages d'erreur pour les exceptions liées au format de données du modèle Entity
|
|
|
|
|
+- "Entities.cs" : classe partielle permettant d'utiliser les nouvelles Exceptions FormattedDbEntityValidationException en surchargeant "SaveChanges()"
|
|
|
|
|
+En cas d'ajout d'une nouvelle connexion avec Entity Framework, il faut ajouter une nouvelle classe d'extension du même type.
|
|
|
|
|
+
|
|
|
|
|
+# CD67.ModeleMVC.Factory
|
|
|
|
|
+Les classes sont nommées ainsi : "[Nom objet]Factory"
|
|
|
|
|
+
|
|
|
|
|
+Chaque "Factory" hérite de la classe de base "baseFactory"
|
|
|
|
|
+
|
|
|
|
|
+# CD67.ModeleMVC.MVC
|
|
|
|
|
+La partie Model du projet n'est pas nécessaire que pour définir des classes ne servant qu'à l'affichage, les classes mêtiers étant dans le projet Entity.
|
|
|
|
|
+
|
|
|
|
|
+# CD67.ModeleMVC.Tests
|
|
|
|
|
+Projet le plus important de la solution :)
|