Question

J'ai une application .NET 2.0 à 3 niveaux. La couche de présentation fait référence au niveau intermédiaire. Le niveau intermédiaire fait référence à la couche de base de données. Pour une raison quelconque, lorsque je compile, les dll de la couche de données apparaissent dans le bac de la couche de présentation. Comment puis-je arrêter cela?

Était-ce utile?

La solution

La seule façon d’interrompre cela consiste à transformer un ou plusieurs de vos niveaux en couche de service (ou quelque chose de similaire) pour séparer physiquement vos niveaux.

Etant donné que vos différents niveaux ont été compilés les uns contre les autres, les assemblys doivent être présents pour que l’application entière fonctionne correctement. Comment envisagez-vous le fonctionnement de l'application sans tous les assemblages?

Autres conseils

définissez Copy Local sur false dans les propriétés de référence

Il est correct d’être copié car il est connu sous le nom de dépendances. Votre niveau intermédiaire dépend de DataAccess et de l'interface utilisateur du niveau intermédiaire. Vous devez garder une trace uniquement pour ne pas référencer l'accès aux données à partir de l'interface utilisateur.

Normalement, je fais une application de couche physique comme suit:

  1. interface utilisateur
  2. présentateur
  3. BusinessLogic
  4. DataAccess
  5. Entité

Mais je change d’avis sur cette organisation. Comme je l'ai fait beaucoup de projets et certains d'entre eux exigent de la maintenance et des améliorations. Je commence à penser que cette organisation est trop monolithique. Certains auteurs comme Ted Faison, Tomas Erl, Robert C. Martin et Andy Tante disent que cette approche hiérarchique est un peu naïve.

Quoi qu'il en soit ... Mettez votre logique dans des projets séparés et construisez-les comme des assemblages distincts. Faites des références hiérarchiques et vous aurez ce que vous voulez.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top