Hola gente!

Dennis, porque NHibernate trata de inyectar en esa propiedad, no un List<>,
sino una clase propia de NHibernate que maneja una lista de entidades,
seguramente con manejo de lazy, o lo que decida tu mapeo y el NHibernate.

Esa clase (que te aparece en la exception, es la 'NHibernate.Collection.
Generic.PersistentGenericBag`1[SimpleOrmApplication.Entities.Taxi]
) esta dentro de NHibernate, y no es un List<>... Es un IList<>....

Esa clase puede cambiar, pero el contrato del NHibernate dice algo como
"pues, bien, te voy a dar una IList, vos fuma, tranqui, no duele, pero es
una IList, eh?". Algo asi ;-)

Nos leemos!

Angel "Java" Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez


2011/1/5 Dennis Alba <[email protected]>

> gracias Edgar, problema resuelto, pero por que?? Que diferencia hay en
> haber puesto IList??
> entonces seria recomendable que cada vez que tenga una lista
> realmemnte ponga IList<>??
> gracias
>
> El 05/01/11, Edgar Ramos <[email protected]> escribió:
> > Intenta cambiar lo siguiente
> >
> > List<C_Taxi> taxis por IList<C_Taxi>
> >
> > Saludos
> >
> > Edgar
> >
> >
> > El 5 de enero de 2011 15:34, Banzai <[email protected]> escribió:
> >
> >> saludos tropa, requiero ahora plantear la siguiente duda, he mapeado
> >> dos clases C_Taxi y C_BaseTaxi cuyos campos son los siguientes:
> >>
> >> C_Taxi                                   C_BaseTaxi
> >> nombChofer                            nombBase
> >> estado                                   List<C_Taxi> taxis
> >>
> >> como se puee apreciar C_BaseTaxi tiene una lista de Taxi por lo que
> >> estamos en presencia de una relacion 1-m, este mapeo lo logro hacer
> >> sin problemas, el conflicto surge cuando intento insertar una
> >> instancia de C_BaseTaxi que contiene en su lista taxis 3 taxis (t1,t4
> >> y t5), yo realmente no mando a insertar los taxis por separado, pues
> >> asumo que cuando mande a insertar la Base taxis el recorra la lista de
> >> taxis correspondiente y vaya insertando los taxis que dicha base
> >> contiene en su lista, osea solo hago esto
> >>
> >> session.save(Base1); \\ donde Bse uno es una instancia de C_BaseTaxi
> >> al hacer esto me da el siguiente error
> >>
> >> {"No se puede convertir un objeto de tipo
> >>
> >>
> 'NHibernate.Collection.Generic.PersistentGenericBag`1[SimpleOrmApplication.Entities.Taxi]'
> >> al tipo
> >>
> 'System.Collections.Generic.List`1[SimpleOrmApplication.Entities.Taxi]'."}
> >>
> >> alguien tiene unda idea de que estoy haciendo mal??
> >> Gracias mil
> >>
> >> --
> >> Para escribir al Grupo, hágalo a esta dirección:
> >> [email protected]
> >> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
> >
> > --
> > Para escribir al Grupo, hágalo a esta dirección:
> > [email protected]
> > Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>
> --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>

-- 
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