Pablo. Así, rápidamente se me ocurre lo siguiente, no sé si tendrá algún
error o inconveniente.

Asumiendo que estas obteniendo instancias de las Entidades desde tu lógica
de negocios con algún EntidadProvider o algo así, podrías exponer en la
clase que responda al LazyLoad algún delegado que reciba como parámetro la
Entidad de negocio en cuestión. 

Al momento de generar y devolver la instancia de la Entidad desde este
EntidadProvider le asociás el delegado de LazyLoading.

Cuando la Entidad tenga la necesidad de invocar LazyLoading, hará un invoke
del delegado pasándole una referencia de sí misma como parámetro sin
necesidad de llamar a la clase de Negocio (que no conocerá, por cierto).

Por último, la clase que responda al LazyLoading, que conocerá a la entidad
que recibe, procederá a cargarla.

 

Si usás VB y te queda más cómodo, podés usar un evento en lugar de un
delegado.

No sé si quedó algo confuso.

 

Saludos  

Leonardo.

 

  _____  

De: pasat pasat [mailto:ppa...@hotmail.com] 
Enviado el: lunes, 29 de diciembre de 2008 14:48
Para: patrones List Member
Asunto: [patrones] consulta sobre lazy load

 

* Replies will be sent through Spamex to patrones@mug.org.ar 
* For additional info click -> www.spamex.com/i/?v=3955273 

 

Estimados amigos

Estoy desarrollando una aplicación con 4 proyectos

*         Lógica de negocios

*         Entidades

*         Mapeadores

*         Datos

 

Cada proyecto tiene las siguientes referencias

1.       Logica de negocios con  mapeadores y entidades

2.       Mapeadores con entidades y datos

 

Ahora el problema, quiero usar el patrón LL, pero desde las entidades no
puede hacer referencia al proyecto de LN o los Mapeadores porque me da
referencia circular. Pense en usar reflection pero creo que es complicarse
sin sentido. Algunos de Ud. Tiene alguna idea de cómo resolverlo? 

Gracias por adelantado.

 

  _____  

Compartí todas tus fotos con Windows Live® Fotos ¡Arrastralas
<http://www.microsoft.com/windows/windowslive/photos.aspx>  y subilas!

Responder a