http://martinfowler.com/eaaCatalog/dataTransferObject.html
2009/1/16 uhilari <[email protected]> > > Hola > > Gracias, he entendido muy bien la idea, pero solo por cultura general > pueden decirme que siginifica exactamente DTO? > > > On 15 ene, 16:59, "Diego Ramirez" <[email protected]> wrote: > > Yo creo que todas las respuestas son válidas. Lo mejor sería un DTO. > > Probaste con implementar ICloneable en tu clase? Tal vez sea mejor que > > recorrer toda la lista. > > Creo que Dario habia tirado la solución. > > Busca más en el grupo. > > > > El 15 de enero de 2009 19:20, Nelo Pauselli <[email protected] > >escribió: > > > > > > > > > > > > > Recorré la lista original y crea una nueva con todos Clientes. > > > > > IList<Cliente> listaNueva = new List<Cliente>(); > > > foreach (Cliente c in listaOriginal) > > > listaNueva.Add(c) > > > > > y luego usas listaNueva para bindear al datagrid. > > > > > creo que con esto alcanza. > > > > > si no te funciona avisá que busco como había solucionado, creo que era > así. > > > > > Saludos. > > > Nelo. > > > > > PD: si es esto, el tema en de los controles, no en nh. > > > > > 2009/1/15 Gustavo Ringel <[email protected]>: > > > > No tenes ningun problema en tener lineas que son parte de un proxy y > > > lineas > > > > que no siempre que hereden del mismo tipo. > > > > Yo te explique cual es el problema que tenes en mi post y no tiene > nada > > > que > > > > ver con el proxy sino con lazy load. > > > > Si seguis una de mis dos sugerencias te va a andar. > > > > Si no entendes las sugerencias no vuelvas a repetir la pregunta sino > que > > > > deci que es lo que no entendiste. > > > > > > Gustavo. > > > > > > 2009/1/15 uhilari <[email protected]> > > > > > >> OK. > > > > > >> No habia leido ello, pero ahora, como le hago para que todos sena > del > > > >> mismo tipo o para que funcione?? > > > > > >> Gracias > > > > > >> On 15 ene, 14:48, "Gustavo Ringel" <[email protected]> > wrote: > > > >> > lee mi respuesta. > > > > > >> > 2009/1/15 uhilari <[email protected]> > > > > > >> > > He estado haciendo seguimiento y resulta que le primer item que > me > > > >> > > muestra es 'ClienteProxyd54f46bd7e53405899aa30d4a05960e8', y el > > > >> > > segudon es simplemente Cliente, este puede ser el motivo??? > > > > > >> > > Si es asi, como hago para que todos sean proxys o todos sean > > > >> > > clientes??? > > > > > >> > > Gracias > > > > > >> > > On 15 ene, 14:12, "Nelo Pauselli" <[email protected]> > wrote: > > > >> > > > ME PARECE que el problema está en que una grilla acepta solos > > > >> > > > objetos > > > >> > > > del mismo tipo como source y nh te está devolviendo tanto > objetos > > > >> > > > del > > > >> > > > tipo que mencionas como proxies de objetos. > > > > > >> > > > Nelo. > > > > > >> > > > On Thu, Jan 15, 2009 at 4:39 PM, Gustavo Ringel > > > > > >> > > > <[email protected]> wrote: > > > >> > > > > Quizas la respuesta es hacer algo un poco mas adecuado > > > > > >> > > > > 1) Lo mas sano es no mapear un objeto de NH a una grilla. Lo > que > > > >> > > > > es > > > >> > > decir, > > > >> > > > > de tu capa de negocios traes un objeto DTO o > MyBindableClient, o > > > >> > > > > como > > > >> > > sea, > > > >> > > > > que implementa INotifyPropertyChanged, y otras cosas que las > > > >> > > > > clases > > > >> > > > > bindables tienen que implementar. > > > >> > > > > Ademas todo lo tenes bien planito, es decir, de un cliente > traes > > > >> > > > > el > > > >> > > nombre, > > > >> > > > > la direccion, pero no el objeto Address sino, la direccion > en > > > si, > > > >> > > > > es > > > >> > > decir > > > >> > > > > aplanas todo segun lo que vas a mostrar. > > > > > >> > > > > 2) Supongamos que tu programa es chico y que podes aplanar > la > > > >> > > > > entidad > > > >> > > madre > > > >> > > > > y hacerla bindable...y que es justificable para no hacer > crecer. > > > >> > > > > bueno, pones algunas propiedades solo con get que aplanan > > > Address > > > >> > > > > y > > > >> > > otras > > > >> > > > > cosas es decir por ejemplo PostalCode { get {return > > > >> > > > > address.PostalCode; > > > >> > > } } > > > >> > > > > y te aseguras que cuando levantas un cliente Address se > fetchea, > > > >> > > > > por > > > >> > > medio > > > >> > > > > de un join o un eager fetch. Y mapeas a la vista solo datos > > > >> > > > > aplanados, > > > >> > > nunca > > > >> > > > > objetos (como Address en si) > > > > > >> > > > > Bueno, en realidad hay mas sugerencias, pero siguiendo 1 o > 2, no > > > >> > > > > te > > > >> > > debierar > > > >> > > > > ocurrir lo que te paso antes que en general se debe a lazy > > > loading > > > >> > > > > con > > > >> > > > > sesion cerrada o a que trataste de asignar a un campo que > > > marcaste > > > >> > > > > como > > > >> > > > > string un object...o cosas por el estilo. > > > > > >> > > > > Saludos. > > > > > >> > > > > Gustavo. > > > > > >> > > > > On Thu, Jan 15, 2009 at 6:52 PM, uhilari <[email protected] > > > > > >> > > > > wrote: > > > > > >> > > > >> Hola. > > > > > >> > > > >> Lo que pasa es que tengo el objeto Cliente mapeado a mi NH, > y > > > >> > > > >> guarda > > > >> > > > >> normal, en us mantenimiento lo jala normal, > > > >> > > > >> pero cuando lo abro en una grilla, para hacer la busqueda > me > > > bota > > > >> > > > >> este > > > >> > > > >> error > > > > > >> > > > >> TargetInvocationException > > > >> > > > >> El descriptor de acceso de la propiedad 'Nom_per' inició la > > > >> > > > >> excepción > > > >> > > > >> 'El objeto no coincide con el tipo de destino.' en el > objeto > > > >> > > > >> 'SivNet.Entidades.Operaciones.Clases.Cliente' > > > > > >> > > > >> alguien puede darme una idea de por que pasa esto, he > buscado > > > por > > > >> > > > >> todo > > > >> > > > >> lado, pero no ubico donde puede estar el error. > > > > > >> > > > >> Gracias- Ocultar texto de la cita - > > > > > >> > > > - Mostrar texto de la cita -- Ocultar texto de la cita - > > > > > >> > - Mostrar texto de la cita - > > > > -- > > Ramirez, Diego Alcides > > Ingeniero en Sistemas de Información > > Tel:(+543731)-15405075 > > Blog:www.thedarsideofit.com.ar > > Equipo de Desarrollo - VGM Sistemaswww.vgmsistemas.com.ar > > > --~--~---------~--~----~------------~-------~--~----~ Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano -~----------~----~----~----~------~----~------~--~---
