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

Responder a