Pregunta

Tengo una aplicación .NET 2.0 de 3 niveles. La capa de presentación hace referencia al nivel medio. El nivel medio hace referencia a la capa de base de datos. Por alguna razón, cuando compilo, los dll para la capa de datos aparecen en el contenedor de la capa de presentación. ¿Cómo detengo esto?

¿Fue útil?

Solución

La única forma de detener esto es hacer que uno o más de sus niveles sean una capa de servicio (o algo similar) para separar físicamente sus niveles.

Dado que sus niveles separados se compilaron unos con otros, los ensamblajes deben estar allí para que la aplicación completa funcione correctamente. ¿Cómo imagina que la aplicación funcione sin todos los ensamblajes?

Otros consejos

establezca Copiar local en falso en Propiedades de referencia

Está bien copiarse porque se conocen como Dependencias. Su nivel medio depende de DataAccess y UI en el nivel medio. Solo debe realizar un seguimiento para no hacer referencia al acceso a datos desde la interfaz de usuario.

Normalmente hago la aplicación de capa física de la siguiente manera:

  1. UI
  2. Presentador
  3. BusinessLogic
  4. Acceso de datos
  5. entidad

Pero estoy cambiando mi opinión sobre esta organización. Como he hecho muchos proyectos y algunos de ellos requieren mantenimiento y mejoras. Empiezo a pensar que esta organización es demasiado monolítica. Algunos autores como Ted Faison, Tomas Erl, Robert C. Martin, Andy Aunt dicen que este enfoque jerárquico es algo ingenuo.

De todos modos ... Ponga su lógica en proyectos separados y constrúyalos como ensamblajes diferenciados. Haz referencias jerárquicas y tendrás lo que quieres.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top