Que tal tocayo
intente aplicar lo que comenta fabio pero no mas no me funciono
Primero cree mi clase, simple para este ejemplo
namespace GFV
{
public class cSimpleItem
{
public cSimpleItem()
{
m_strNombre = string.Empty;
m_strPassword = string.Empty;
}
public cSimpleItem(string nom, string pwd)
{
m_strNombre = nom;
m_strPassword = pwd;
}
#region Property 'Nombre'
private string m_strNombre;
public virtual string Nombre
{
get { return m_strNombre; }
set { m_strNombre = value; }
}
#endregion //Property 'Nombre'
#region Property 'Password'
private string m_strPassword;
public virtual string Password
{
get { return m_strPassword; }
set { m_strPassword = value; }
}
#endregion //Property 'Password'
}
}
cree el mapping y le cambie la propiedad Build Action a un recurso embebido
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="GFV"
namespace="GFV.Clases">
<import class="cSimpleItem,GFV"/>
</hibernate-mapping>
intente ejecutar el codigo y pues me marca que no encuentra mi clase
IQuery q = session.CreateQuery("select new
cSimpleItem(Nombre, Password) from cUsuario where ID = ? "); // en esta
linea lo marca
q.SetString(0, "1");
IList<cSimpleItem> result = q.List<cSimpleItem>();
alguna idea?
El 24 de enero de 2010 10:05, Carlos Peix <[email protected]> escribió:
> Hola Carlos,
>
> Si estas haciendo un reporte entonces probablemente no te convenga
> recuperar tus objetos del modemo de dominio y sea mas recomendable traerte
> una suerte de objetos especiales para las necesidades del reportes,
> practicamente sin logica de negocio, una suerte de contenadores de datos,
> suelen llamarse DTOs por Data Transfer Objects.
>
> La manera de usarlos con NH es la que te muestra Fabio en su ultimo post.
>
> Un saludo.
>
> ----------------------------------
> Carlos Peix
>
> 2010/1/23 Carlos Cocom <[email protected]>
>
>> Fabio Maulo
>> *
>> *
>> Por lo que he leído, No. Todas son consultas nativas.
>>
>> Fabio creo entender el concepto de trabajar con objetos (Llamese Strings,
>> Arrayas, Int, ..) y pensar en un diseño orientado en objetos. Por favor no
>> lo tomes a mal No es personal.
>>
>> Si bien pegue un pedazo de codigo muy burdo y tonto la idea no era
>> encontrar errores en este si no utilizarlo para ejemplificar.
>>
>> La razon de que no recupero entidades completas es
>>
>> Primero por que para eso tenemos HQL por lo que entiendo
>> Segundo por que no necesito todos los campos
>> Tercero por que es mas eficiente una consulta donde solo obtengo lo
>> necesario (mas rapido el query y su trasportacion por la red requiere menos
>> recursos)
>>
>> Se que todo esto ya lo saben asi que no crean que intento enseñarles algo
>> al contrario yo quisiera aprender.
>>
>> *Regresando al punto*
>>
>>
>> En fin, Carlo Peix tienes toda la razón utilice el termino tablas y es
>> incorrecto el concepto entidad es mas adecuado.
>>
>> En fin lo que intento realizar es hacer un HQL y recuperar una entidad que
>> esta compuesta de propiedades de otras entidades esto para armar un reporte.
>>
>> aqui el burdo ejemplo de antes (en este ejemplo solo estoy consultado a
>> una sola entidad en mi reporte tengo que mezclar 4 entidades)
>>
>> q = session.CreateQuery("select Nombre,Password from cUsuario
>> where ID = ? ");
>> q.SetString(0, "1");
>>
>> IList people = q.List();
>>
>> Se que esto esta mal esto pero como le debo hacer?
>>
>> Gracias.
>>
>>
>>
>>
>>
>> El 23 de enero de 2010 08:21, Fabio Maulo <[email protected]>escribió:
>>
>> El 23 de enero de 2010 08:14, Carlos Peix <[email protected]>escribió:
>>>
>>> Hola Carlos,
>>>>
>>>> Entiendo que el tano ya conoce la diferencia entre CreateSqlQuery y
>>>> CreateQuery ( tano, si tenes dudas pregunta :-) ).
>>>>
>>>
>>> Ya que fuiste tan gentil pregunto:
>>>
>>> Con CreateSQL puedo hacer queries OO ? (me refiero a interrogar Entidades
>>> y obtener Entidades y no que total son todos objetos).
>>>
>>> --
>>> Fabio Maulo
>>>
>>> --
>>> 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