Tentaciones: Dependency Object + Equals

Como ya te has roto los cuernos un par de veces con este tema, te aviso, JMN: Los Dependency Object y el método Equals se llevan FATAL. Es más, si heredas de Dependency Object, olvídate de tener un Equals semántico. El método Equals (y GetHashCode())está sellado y lo único que conseguirás será comparar referencias. ¡Nada de overrides!

Esto es así por muchas razones que quizá no sean evidentes, pero son muy convincentes. De hecho, una de las mayores es que los Depency Objects normalmente lo son para poder tener Dependency Properties, cuyo mecanismo no se lleva muy bien parecer ser con los Equals por razones que desconozco. Además, los Dependency Objects  están muy ligados a la interfaz (y a la tecnología, por consiguiente), con lo que tendrías que HUIR de ellos si lo que quieres es tratarlos como entidad del modelo. Son para representar entidades del modelo, no entidades en sí mismas. ¡Atento al matiz!

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s