Hola cristian

Como dice Diego en el método CreateCriteria estas intentado pasarle tu HQ y
eso es incorrecto

Ahora recuerda que HQL significa que en el from se espera el nombre de una
entidad por ejemplo en tu almacen de datos tienes un espacio llamado
tbPaises y ahora en tu aplicacion creaste una entidad llamada GES_PAISES a
la hora de hacer tu recuperación de datos tienes que poner algo como

* NHibernate.IQuery qry =NHSession.CreateQuery("from GES_PAISES as u
where u.CODDIVISIONPOLITICA= :divpol");*
* qry.SetString("divpol", CodigoPais);*
*
*
*IList<GES_PAISES> paises = (IList<GES_PAISES>)qry.List();*

Saludos

El 20 de mayo de 2010 13:03, Diego Mijelshon <[email protected]>escribió:

> Le estás pasando HQL a CreateCriteria. Cambialo por CreateQuery.
> Tengo muchísimas cosas más para decir sobre ese código... pero empezá por
> eso.
>
>    Diego
>
>
> 2010/5/20 ccmmasi <[email protected]>
>
> Hola, muy buenos dias
>> Mi nombre es Cristian y estoy trabajando con NHibernate, Asp y Oracle.
>> He llenado un DropDownList con datos de una tabla asi:
>>
>>        DDLPaisesAgregados.DataSource =
>> Ges_PaisesService.GetTodosPaises();
>>        DDLPaisesAgregados.DataTextField = "NOMBRE";
>>        DDLPaisesAgregados.DataValueField = "CODDIVISIONPOLITICA";
>>        DDLPaisesAgregados.DataBind();
>>
>> la funcion GetTodosPaises es esta:
>>
>> public static IList<GES_PAISES> GetTodosPaises()
>>        {
>>            IList<GES_PAISES> paises;
>>
>>            using (NHibernate.ISession NHSession =
>> SessionFactory.GetNewSession())
>>            {
>>                NHibernate.ICriteria qry =
>> NHSession.CreateCriteria(typeof(GES_PAISES));
>>                paises = qry.List<GES_PAISES>();
>>            }
>>            return paises;
>>        }
>>
>> a este pais le deseo añadir un departamento, como una division
>> politica, entonces al añadir el departamento debo tomar el codigo del
>> pais, para lo cual selecciono del anterior dropdown el pais al cual va
>> a pertenecer el departamento.
>> he hecho un filtro que se supone me encuentra el pais con su codigo,
>> es este:
>>
>> public static GES_PAISES FiltrarPais(string CodigoPais)
>>        {
>>            IList<GES_PAISES> paises;
>>            GES_PAISES pais;
>>            using (NHibernate.ISession NHSession =
>> SessionFactory.GetNewSession())
>>            {
>>                NHibernate.ICriteria qry =
>> NHSession.CreateCriteria("Select u from GES_PAISES as u where
>> u.CODDIVISIONPOLITICA={0}", CodigoPais);
>>                paises = qry.List<GES_PAISES>();
>>                pais = paises as GES_PAISES;
>>            }
>>            return pais;
>>        }
>>
>> pero me sale un error que dice :
>> No persister for: Select u from GES_PAISES as u where
>> u.CODDIVISIONPOLITICA={0}
>>
>> mi pregunta es como puedo hacer el select en nhibernate, espero me
>> puedan ayudar.
>> pdta: porfa, no sean muy duros conmigo, estoy empezando, si lo estoy
>> haciendo mal me dicen pero comprendiendo que no todos saben como
>> ustedes pueden llegar a saber, si el tema no es del todo de nhibernate
>> me disculpo.
>> espero me puedan ayudar
>>
>> --
>> 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