En el caso de las que son genéricas abiertas (Remito<T>), en las que son
abstractas comunes como ItemRemito, si deberías mapearla y mapear sus
subclases como se hace siempre.

Por lo menos así lo entendí yo y me anduvo, quizás algún experto en NH puede
profundizar en esto, pero como dice Ayende:

What we *can't* do is to map ContactInformation<TContactInfoType>, for the
very simple reason that we have no way of doing it

Fijate que el si mapea las que ContactInformation`1[System.String] y
ContactInformation`1[MyBlog.User]
que son las clases con el generico ya cerrado.

Saludos,

El 30 de junio de 2011 17:27, Nicolás Marzoni <[email protected]> escribió:

> Walter, gracias por responder tan rápido.
> Entonces no debería mapear la herencia completa sino directamente las
> clases especificas?
>
> On 30 jun, 17:15, Walter Poch <[email protected]> wrote:
> > Tendrías que mapear las clases que ya tienen el generic específico:
> > RemitoDeCompra y RemitoDeDistribucion, como cualquier otra clase. El tipo
> > generico abierto Remito<T> no se mapea.
> >
> > Por lo menos esto es lo que entendí yo al enfrentarme a un problema
> similar.
> >
> > Saludos,
> >
> > El 30 de junio de 2011 17:07, Nicolás Marzoni <[email protected]>
> escribió:
> >
> >
> >
> >
> >
> > > Quizá esta consulta no tenga del todo que ver con NHibernate, pero me
> > > gustaría saber si alguno puede darme una mano con el siguiente tema.
> >
> > > Tengo las siguientes herencias.
> >
> > > public abstract class Remito<T>
> > > {
> > > IList<T> Items {get; set;}
> > > }
> >
> > > public class RemitoDeCompra : Remito<ItemRemitoDeCompra>
> > > { ... }
> >
> > > public class RemitoDeDistribucion : Remito<ItemRemitoDeDistribucion>
> > > { ... }
> >
> > > public abstract class ItemRemito
> > > {...}
> >
> > > public class ItemRemitoDeCompra : ItemRemito
> > > {...}
> >
> > > Tengo una herencia de remitos y de items de cada remito. Cada remito
> > > puede tener unicamente un tipo de item. Por ejemplo el RemitoDeCompra
> > > solo tiene items del tipo ItemRemitoDeCompra.
> >
> > > La duda y el problema surge al intentar mapear la herencia completa.
> > > Estuve mirando el post de Ayende
> > >http://ayende.com/blog/2951/nhibernate-and-generic-entities
> > > pero allí no veo herencia.
> >
> > > Cual sería la manera correcta de hacer los mappings? Trabajo con xml,
> > > y NH 3.
> > > De no ser recomendable el mapeo de generics o para evitar posibles
> > > problemas se les ocurre alguna otra alternativa de diseño?
> >
> > > Muchas Gracias.
> >
> > > --
> > > Para escribir al Grupo, hágalo a esta dirección:
> > > [email protected]
> > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano
> >
> > --
> > Saludos,
> >
> > Walter G. Poch
> > Sr. .Net Developer
> > --------------------------------------------
> > Cell: +54 (9 341) 3353273
> > [email protected] Ocultar texto de la cita -
> >
> > - Mostrar texto de la cita -
>
> --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>



-- 
Saludos,

Walter G. Poch
Sr. .Net Developer
--------------------------------------------
Cell: +54 (9 341) 3353273
[email protected]

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a