2010-11-28 4 views
3

Je suis un peu confus au sujet de la structure de dossier de mon projet et je les regroupe dans Controller. Le projet est E-Commerce. J'ai des pages commeStructure du dossier ASP.NET MVC pour le projet E-Commerce

Accueil, A propos, Contact, menu Catégorie et page liste Sous-catégorie, ProductList, ProductDetail, ShoppingCart, CartSummary, Commander

Gestion de l'utilisateur Modifier le profil, commandes, connectez-vous la gestion de l'information.

Administrateur Gestion des produits (Insert, Update, Delete, Upload images, ajout description, etc.), la gestion des catégories, etc. La gestion des commandes

Dois-je faire des zones ?. Comment faire une structure de dossier propre.

Répondre

4

Ma suggestion:

  • HomeController:
    • Accueil (action Index)
    • A propos
    • Contactez
  • CategoryController:
    • Catégorie (action Index - subc atégorie en tant que paramètre de l'action de catégorie)
  • ProductController:
    • Liste (vous pouvez partager la productlist-html comme usercontrol avec les actions de catégorie),
    • Détail
  • CartController :
    • ShoppingCart (action Index)
    • Commander
    • paiement
    • ...
  • UserController:
    • Index (afficher les options possibles: Modifier et commandes)
    • Modifier
    • Commandes
  • Admin (Créer un zone séparée pour cela car vous aurez besoin de plusieurs contrôleurs pour gérer votre site)
    • UsersController
    • CommandesController
    • ProduitsController
    • SettingsController
    • MailingsController
    • ...
1

zones est la voie à suivre. Essayez de créer un dossier pour chaque grande fonctionnalité que vous avez mentionnée. Et consolider tout ce qui concerne l'intérieur d'une région, y compris les contrôleurs, vues, css, javascript, etc.

Faire un dossier partagé distinct qui contiendrait les choses communes à l'ensemble du site, par exemple les pages maîtres, fichiers jQuery etc.

1

Je suggère que la disposition de la solution de ZippyV est un bon point de départ pour la solution. En fonction de la façon dont vous voulez utiliser IoC et les tests unitaires, je pourrais envisager de séparer les contrôleurs (et éventuellement le modèle) en un projet séparé pour faciliter les tests unitaires. En plus de cela, je quitterais la section admin jusqu'à ce que vous ayez défini tous les objets/structures de données dont vous avez besoin pour le site public, sinon vous finirez par changer un objet modèle et devoir mettre à jour à plusieurs endroits pour potentiellement pas de gain (car il pourrait encore changer :-)).

Questions connexes