ASP.NET MVC4 Architecture n-tiers: meilleure approche

Je l'élaboration d'un 3 architecture de niveau pour un MVC4 webapp + EntityFramwork5.
Je veux garder separete la couche, de sorte que seulement DAL sait que je suis avec EF, par exemple.

En fait j'ai beaucoup de classes à gérer que:

DAL

  1. Entité POCO
  2. Entité DataContext : DbContext
  3. Entité Référentiel

BL

  1. Entité ViewModel
  2. Entité de Service(instancier Entité Référentiel)

WEB

  1. Entité Contrôleurs (instancier Entité de Service)

C'est un travail, mais est assez difficile à mantain. Je pensais à supprimer l'Entité Référentiel dans la DAL et de l'utiliser directement le DataContext (si je ne me trompe pas, après tout DbContext a été desingned être un Référentiel et d'une Unité de Travail), mais qui va me forcer à ajouter une référence à EntityFramework.dll dans mon BL. N'est pas un gros problème, mais I0m pas sûr que c'est le meilleur choix.

Des conseils?

(J'espère que j'ai donné suffisamment d'informations, si vous avez besoin de plus, il suffit de demander)

Je ne suis pas tout à fait sûr pourquoi u citez, il est difficile de maintenir le projet d'ur. La couche do u pense que c'est difficile à entretenir ?
Par exemple, si j'ajoute un champ à un POCO, je vais avoir besoin de mettre à jour le datacontext (pas toujours), le dal référentiel, le BL modèle de vue, le BL service .. pas .. mais il est probablement dans cette structure (ou un desing erreur)
salut @Davide, u pourrait appliquer certaines GOF modèles de conception pour le projet d'ur. Par exemple, si vous pouviez ajouter un champ à un POCO, u peut utiliser "Constructeur":).

OriginalL'auteur Davide | 2013-02-07