Comment séparer les contrôleurs d'un site ASP.NET MVC? Par exemple, le projet par défaut a un HomeController et un AccountController. Devrait-il y avoir un contrôleur pour chaque section du site, ou autre chose? J'apprends à utiliser le framework MVC et toute aide serait appréciée.Fractionnement des automates ASP.NET MVC
Répondre
Je pense que cela dépend de la taille de votre site. Avoir des noms logiques pour vos contrôleurs est la partie la plus importante, rendant votre source facile à naviguer est très important.
Généralement, je crois que c'est une bonne idée de sortir une feuille du livre CRUD si vous n'êtes pas sûr, surtout si vous avez affaire à un modèle de données qui le supporte. Pour un module particulier (par exemple, les produits), vous auriez un contrôleur responsable de créer, lire, mettre à jour et supprimer (ainsi que l'index pour l'affichage). Si votre site est moins CRUDDY (comme Stack Overflow probablement), alors diviser les contrôleurs en zones logiques (comme peut-être "PostController", "SearchController" et ainsi de suite) pourrait être plus utile, mais c'est vraiment le cas Cela dépend de votre site et de son architecture.
Désolé je ne peux pas être plus utile, dans la plupart des cas, il est préférable d'apprendre en faisant de toute façon. Si vous êtes nouveau, adoptez l'approche qui, selon vous, est la meilleure, en fonction des suggestions et des exemples que vous avez vus. Un bon réflexe à propos de .NET et ASP.NET MVC est que le refactoring plus tard est assez facile.
La manière classique de procéder est de diviser les contrôleurs de la même manière que vous divisez vos vues. Exemple:
/Vues/Accueil a Index, inscrivez-vous et contactez vue alors vous auriez un HomeController
/Vues/produit a Afficher et Liste des vues vous auriez un ProductController
Le plus simple manière est 1 contrôleur pour chaque dossier dans le dossier Views.
Il n'y a pas de règle spécifique en tant que telle, quant à savoir quand créer un nouveau contrôleur. Vous pouvez créer un nouveau contrôleur si vous pensez qu'il va contrôler une section différente du site Web.
Fondamentalement, en ayant beaucoup de contrôleurs, on peut logiquement diviser le site en différentes sections.
- 1. Différentes manières d'injecter des dépendances dans les automates ASP.NET MVC?
- 2. Quand les automates ASP.NET MVC sont-ils collectés?
- 3. fractionnement des tableaux
- 4. fractionnement de la chaîne
- 5. fractionnement d'un dépôt git
- 6. ASP.NET MVC - Travail des contrôleurs
- 7. ASP.NET MVC Globalisation des Vues
- 8. Gestion des exceptions ASP.NET MVC
- 9. H.264 Fractionnement avec ActionScript
- 10. Fractionnement de chaînes en C++
- 11. chaînes de Fractionnement en javascript
- 12. Regex fractionnement des chaînes sur un caractère, non contenu dans()
- 13. Fractionnement des volets dans XCode - Je souhaite avoir My Emacs :(
- 14. chaîne de fractionnement basée sur des valeurs dans un tableau
- 15. arguments Fractionnement - conservation des sous-chaînes cités - en python
- 16. Fractionnement d'une chaîne complexe avec des expressions régulières
- 17. asp.net mvc -
- 18. asp.net mvc Liste des listes de sélection
- 19. asp.net mvc rechercher et éditer des vues
- 20. Utilisation des vues partielles dans ASP.NET MVC
- 21. des espaces dans les vues asp.net mvc
- 22. ASP.NET MVC obtenant des variables d'utilisateur
- 23. Gestion des caractères spéciaux - dans asp.net MVC
- 24. validation ASP.NET MVC et des vues
- 25. effectuer des recherches avec ASP.NET MVC
- 26. Enregistrement des métriques de performance ASP.NET MVC
- 27. Test des HtmlHelpers dans ASP.NET MVC
- 28. Intégration des formulaires Web asp.net et mvc
- 29. créer des contrôles dynamiques avec ASP.NET MVC
- 30. Asp.Net MVC - Répertoire des Plugins, Communauté etc?