Perdon la clase que no encuentra es cSimpleItem este tiene como namespace "GFV"
y el mapping para que importe la clase es esta <?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> La estructura que tengo en mi proyecto es Proyecto |----- clases |----- hbm |----- formularios |----- interfases |----- modulos El 25 de enero de 2010 11:20, José F. Romaniello <[email protected]>escribió: > Cual es la que no encuentra? > Si es cSimpleItem deberías decirle a nhibernate donde la creaste. > Para este caso no se como se hace, pero tal vez con un <import en el > mapping. > > El 25 de enero de 2010 12:48, Carlos Cocom <[email protected]>escribió: > > 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 >> > > -- > 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
