entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

2votos

Estoy trabajando en una aplicación de escritorio (NET Desktop Application) usando los patrones, UnitOfWork, IoC, Repositories, Unity Conteiner. La aplicación esta organizada bajo una arquitectura DDD. En cada una de las capas infraestructura, dominio y aplicación tengo una clase Bootstrapper, se encarga de registrar los repositorios, servicios de aplicacion y el UnitOfWork en el Contenedor Unity. Inicialmente el UnitOfWork lo tenia registrado en el Contenedor Unity como HierarchicalLifetimeManager.

Durante las pruebas en mi aplicación, empece a eliminar objetos que tenían relación con otros objetos, (Relación 1 a Muchos), el cual producia error al eliminar, esto pasaba cuando eliminaba el objeto relacionado con otro, a raíz de este error ya no podia eliminar cualquier otro objeto sin importar si tenia relación o no, leyendo un poco empece a investigar la sobre los tiempo de vida para los objetos en el Unity, a raíz de eso, encontré que el TransientLifetimeManager resolvía mi problema, ya que siempre que se resolvía un objeto el contenedor creaba uno nuevo, con esto se resolvió el problema que tenia.

A raiz de experiencia me surge la duda, cual seria la forma mas recomendable de configurar los objetos en el Unity Conteiner en una aplicación de escritorio, deben ser todos TransientLifetimeManager? Esto no tendrá consecuencia en el rendimiento, por consumo de memoria?

Saludos, desde Santa Cruz, Bolivia

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta