2009-05-13 6 views

Répondre

8

L'idée de base de l'existence du dossier Modèles est de garder vos objets avec lesquels vous manipulez. C'est une convention pour maintenir le paradigme MVC (Model-View-Controller). Dans l'application ASP.NET MVC de base, vous stockez la classe L2S DataContext ou la classe de contexte EF dans le dossier Models. Le besoin de classes (fichiers) supplémentaires dans le dossier Models peut s'expliquer par l'idée de classes partielles: toutes les classes du fichier DataContext sont partielles et peuvent être étendues avec des propriétés et des méthodes supplémentaires.

Si vous divisez votre application MVC en plusieurs projets, vous n'avez pas du tout besoin d'utiliser le dossier Modèles, car votre DAL sera dans la DLL que vous référencez à partir de votre application Web MVC.

0

Le dossier modèle est plus une convention de MVC-Model View Controller. Vous pouvez utiliser n'importe quel dossier pour stocker votre modèle, ou même dans un autre assemblage, cela dépend de l'exigence ou du souhait de votre structure de projet.

5

Très différent de App_Code car le dossier App_Code est traité comme contenu et compilé lors de l'exécution. App_Code est spécial de cette manière. En passant, vous devriez rester loin de App_Code si vous voulez obtenir des erreurs de compilateur de votre code plutôt que des erreurs d'exécution.

0

Nous stockons généralement nos dbmls dans ce dossier. Vous pourriez, comme expliqué par @diadiora, ajouter un assembly ou votre code de couche de données.

C'est un moyen d'agréger les aspects fonctionnels du modèle MVC. Tout comme lorsque vous lancez une application Ruby on Rails, je pense que Microsoft essaie de faire respecter les principes de la programmation et de la structure.

0

Dans un projet où nous utilisons des modèles llblgen, j'ai un dossier nommé llblgen pour les modèles générés et un dossier personnalisé pour les choses que nous construisons nous-mêmes.

Vous pouvez faire avec le dossier ce que vous voulez, essayez simplement d'organiser les choses un peu logique afin que quelqu'un qui n'est pas familier avec votre projet puisse le comprendre.

3

Modèles est le M dans MVC. Bien qu'aucune fonctionnalité ne soit fournie dans le modèle de projet par défaut, elle est destinée à être utilisée par une technologie d'accès aux données. Qu'il s'agisse de services web, ado.net, linq to sql, nhibernate, etc.

Bien sûr, vous n'avez pas à le mettre là, vous pouvez mettre chaque partie du projet dans son propre projet, c'est à vous de choisir . Il est simplement là pour aider à faciliter le modèle MVC et n'a aucune fonction réelle.

Questions connexes