Y pregunto: Si no usamos el natural id y como POID, esta bien que lo usemos en el Equals?
Que pasa con el ISet cuando tengo implementado mi Equals y GetHashCode sobre natural id y lo tengo que cambiar? al fin y al cabo, es natural, es parte del negocio y puede cambiar... ---------------------------------- Carlos Peix 2011/2/18 José F. Romaniello <[email protected]> > Digamos que el Entity de unhadins lo usaría solo para cuando el equality lo > quiero hacer mediante el POID. > Si mi entidad no tiene como propiedad el POID, no necesito heredar de la > base entity de unhaddins. Implemento mi equality y gethashcode con las > propiedades incluidas en el natural-id. > > El 18 de febrero de 2011 12:19, Gustavo Ringel > <[email protected]>escribió: > > Si vas a usar Entity de uNhAddins por supuesto. >> Ojo que hay un tema conceptual distinto, en uNhAddins dos entidades >> transientes con mismo natural Id tienen distinto GetHashCode. >> En el BaseObject dos entidades transientes con mismo natural-id son >> iguales. >> >> O sea una cosa no es directamente reemplazable con la otra. Dicho esto yo >> uso Copy & Paste de la Entity de uNhAddins y lo otro lo soluciono en otro >> lado, no en un BaseObject que trata de solucionar problemas en todas las >> capas (un objeto de dominio hereda de algo con Json?). >> >> Gustavo. >> >> 2011/2/18 Fabio Maulo <[email protected]> >> >> Con copy&paste... >>> No vale la pena agregar una referencia para usar una sola clase. >>> En uNhAddIns hay varios fuentes que son mas para hacer copy&paste en >>> lugar que ser referenciado. >>> >>> 2011/2/18 Edgar Ramos <[email protected]> >>> >>> --- >>>> >>>> quería hacerlo a nivel de clase base. Así ninguna >>>> clase derivada necesitaría implementarlos... ya los tendría. >>>> --- >>>> >>>> Bueno y si utilizas Entity de uNhAddIns ? >>>> >>>> Saludos >>>> >>>> Edgar >>>> >>>> El 18 de febrero de 2011 09:08, Juan Cuello >>>> <[email protected]>escribió: >>>> >>>> Jajajaja, cierto. >>>>> >>>>> Lo que pasa es que quería hacerlo a nivel de clase base. Así ninguna >>>>> clase derivada necesitaría implementarlos... ya los tendría. >>>>> >>>>> Hay que filosofar un poco a veces no? :) >>>>> >>>>> On 18 feb, 14:54, Fabio Maulo <[email protected]> wrote: >>>>> > Ves lo que te pasa ? >>>>> > en lugar que preocuparte por implementar tu clases de dominio te >>>>> estas >>>>> > preocupando de otras cosas. >>>>> > En ese tiempo hubiera escrito unos cuantos override de Equals y >>>>> GetHashCode >>>>> > que ubieran funcionado perfecto (sin mencionar que para quien tenemos >>>>> > Resharper esa impl. cuesta un alt+enter y un par de toques mas). >>>>> > >>>>> > 2011/2/18 Juan Cuello <[email protected]> >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > > Ahora que pienso... malo malo. >>>>> > >>>>> > > Y si en lugar de eso te creas una clase estática que contenga el >>>>> > > diccionario como: >>>>> > >>>>> > > internal static class PropertiesCache{ >>>>> > >>>>> > > private static readonly Dictionary<Type, IEnumerable<PropertyInfo>> >>>>> > > signaturePropertiesDictionary = new ... >>>>> > >>>>> > > void Set(Type, IEnumerable<PropertyInfo>) {} >>>>> > > IEnumerable<PropertyInfo> Get(Type...){} >>>>> > >>>>> > > } >>>>> > >>>>> > > (Tal vez haría falta algún lock) Y lo utilizas desde BaseObject >>>>> sería >>>>> > > mejor no? >>>>> > >>>>> > > On 18 feb, 13:56, José F. Romaniello <[email protected]> >>>>> wrote: >>>>> > > > Juan coincido con Gustavo, por decirlo de alguna forma menos >>>>> chocante; >>>>> > > eso >>>>> > > > no es cool. >>>>> > >>>>> > > > Lo que más me llama la atención es esto que dijiste acá: >>>>> > >>>>> > > > El 18 de febrero de 2011 09:27, Juan Cuello < >>>>> [email protected]> >>>>> > > > escribió: >>>>> > >>>>> > > > > La lista de propiedades se obtiene una sola vez por tipo, no >>>>> por >>>>> > > > > instancia. >>>>> > >>>>> > > > Tene en cuenta que el field esta como *[ThreadStatic]* yo ya no >>>>> quiero ni >>>>> > > > imaginar como es que llego a ese lugar. >>>>> > >>>>> > > -- >>>>> > > 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 >> > > -- > 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
