Acabo de encontrar una implementación mejor: http://sharp-architecture.googlecode.com/svn/trunk/src/SharpArch/SharpArch.Core/DomainModel/BaseObject.cs
Y con ésta y algún atributo marcando las propiedades que intervienen ni siquiera se necesita que las clases derivadas intervengan en Equals y GetHashCode... Y encima soporta natural-id! Voy a incorporarlo :) On 18 feb, 12:40, Juan Cuello <[email protected]> wrote: > Vamos... que lo sigo implementando en mis clases... :) > > Vi una implementación hace ya mucho tiempo y siempre uso esa en una > clase > base:http://devlicio.us/blogs/billy_mccafferty/archive/2007/04/25/using-eq... > > Esa implementación me gusta porque hace que las entidades sólo tengan > que implementar el GetHashCode. Pero con esa implementación no puedo > usar natural-id... Nadie es perfecto :) > > Por cierto, ¿por qué se sigue utilizando el Iesi Collections? Yo > pensaba que para NH 3 desaparecería. Alguien me dijo creo que era por > el tema de ISet. ¿Tal vez es por compatibilidad? > > On 17 feb, 23:41, Carlos Peix <[email protected]> wrote: > > > > > > > > > Pucha... > > > Retiro lo dicho entonces, tendre que investigar... > > > ---------------------------------- > > Carlos Peix > > > 2011/2/17 Fabio Maulo <[email protected]> > > > > para NH, en si, no es obligatorio. > > > Peeeeeeeeeeeero: > > > 1) la mejor collection para DDD es un set > > > 2) set es una de la collections mas usada en dominios > > > 3) si no tenes getHashCode/Equals y trabajas con Set es probables que en > > > algun momentos llores > > > > De allí en mas podemos discutir cuanto quieras y hasta te puedo decir que > > > para one-to-many es casi siempre preferible usar List y hacer el control > > > de > > > duplicacción en el ADD solo si realmente lo necesitas (con <bag> el Add no > > > necesita inicializar la collection). > > > > 2011/2/17 Carlos Peix <[email protected]> > > > >> e per que? El link que envio Edgar es claro al respecto... > > > >> Hay riesgo suponiendo que siempre trabajo con una unica sesion y con > > >> objetos persistentes? > > > >> En otras palabras, es obligatorio sobre escribir Equals y GeHashcode? > > > >> ---------------------------------- > > >> Carlos Peix > > > >> 2011/2/17 Fabio Maulo <[email protected]> > > > >>> bah... despues no llores si no te andan los ISet > > > >>> 2011/2/17 Carlos Peix <[email protected]> > > > >>>> O podes no implementarlos... > > > >>>> Carlos Peix > > >>>> (desde el teléfono móvil) > > > >>>> El 17/02/2011, a las 12:51, José F. Romaniello <[email protected]> > > >>>> escribió: > > > >>>> hola Juan pronto estará disponible el vídeo de una VAN que hicimos el > > >>>> sábado pasado con Nelo en AltNet hispano. En un momento de la VAN > > >>>> discutimos > > >>>> este tema con Fabio.. > > > >>>> El tema es el siguiente, cuando no tenes ID en el dominio, generalmente > > >>>> tenes natural-id. Osea que podes usar eso para implementar Equals y > > >>>> GetHashCode > > > >>>> El 17 de febrero de 2011 12:42, Juan Cuello < <[email protected]> > > >>>> [email protected]> escribió: > > > >>>>> Hola, > > > >>>>> He visto por ahí que podemos tener una entidad del dominio sin una > > >>>>> propiedad id que se mapee con el campo id de la base de datos. Eso me > > >>>>> parece genial, ya que considero que el ID es de la base de datos, no > > >>>>> tiene por qué ser del dominio. > > > >>>>> Pero se me ocurre una pregunta importante. En mi clase base para las > > >>>>> entidades del dominio, tengo un Equals y GetHashCode. En el Equals, si > > >>>>> la entidad tiene ID establecido, comparo ID's... > > > >>>>> ¿Cómo se haría el equals y el gethashcode si no tengo id's en la > > >>>>> entidad? > > > >>>>> Gracias > > > >>>>> -- > > >>>>> Para escribir al Grupo, hágalo a esta dirección: > > >>>>> <[email protected]> > > >>>>> [email protected] > > >>>>> Para más, visite: <http://groups.google.com/group/NHibernate-Hispano> > > >>>>>http://groups.google.com/group/NHibernate-Hispano > > > >>>> -- > > >>>> Para escribir al Grupo, hágalo a esta dirección: > > >>>> <[email protected]> > > >>>> [email protected] > > >>>> Para más, visite: <http://groups.google.com/group/NHibernate-Hispano> > > >>>>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 > > > >>> -- > > >>> 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 > > > > -- > > > 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
