C# Class Zephyr.Domain.BaseObject

Afficher le fichier Open project: marufbd/Zephyr.NET Class Usage Examples

Méthodes publiques

Méthode Description
Equals ( object obj ) : bool
GetHashCode ( ) : int

This is used to provide the hashcode identifier of an object using the signature properties of the object; although it's necessary for NHibernate's use, this can also be useful for business logic purposes and has been included in this base class, accordingly. Since it is recommended that GetHashCode change infrequently, if at all, in an object's lifetime, it's important that properties are carefully selected which truly represent the signature of an object.

GetSignatureProperties ( ) : IEnumerable

HasSameObjectSignatureAs ( BaseObject compareTo ) : bool

You may override this method to provide your own comparison routine.

Méthodes protégées

Méthode Description
GetTypeSpecificSignatureProperties ( ) : IEnumerable

Enforces the template method pattern to have child objects determine which specific properties should and should not be included in the object signature comparison. Note that the the BaseObject already takes care of performance caching, so this method shouldn't worry about caching...just return the goods man!

GetTypeUnproxied ( ) : Type

When NHibernate proxies objects, it masks the type of the actual entity object. This wrapper burrows into the proxied object to get its actual type. Although this assumes NHibernate is being used, it doesn't require any NHibernate related dependencies and has no bad side effects if NHibernate isn't being used. Related discussion is at http://groups.google.com/group/sharp-architecture/browse_thread/thread/ddd05f9baede023a ...thanks Jay Oliver!

Method Details

Equals() public méthode

public Equals ( object obj ) : bool
obj object
Résultat bool

GetHashCode() public méthode

This is used to provide the hashcode identifier of an object using the signature properties of the object; although it's necessary for NHibernate's use, this can also be useful for business logic purposes and has been included in this base class, accordingly. Since it is recommended that GetHashCode change infrequently, if at all, in an object's lifetime, it's important that properties are carefully selected which truly represent the signature of an object.
public GetHashCode ( ) : int
Résultat int

GetSignatureProperties() public méthode

public GetSignatureProperties ( ) : IEnumerable
Résultat IEnumerable

GetTypeSpecificSignatureProperties() protected abstract méthode

Enforces the template method pattern to have child objects determine which specific properties should and should not be included in the object signature comparison. Note that the the BaseObject already takes care of performance caching, so this method shouldn't worry about caching...just return the goods man!
protected abstract GetTypeSpecificSignatureProperties ( ) : IEnumerable
Résultat IEnumerable

GetTypeUnproxied() protected méthode

When NHibernate proxies objects, it masks the type of the actual entity object. This wrapper burrows into the proxied object to get its actual type. Although this assumes NHibernate is being used, it doesn't require any NHibernate related dependencies and has no bad side effects if NHibernate isn't being used. Related discussion is at http://groups.google.com/group/sharp-architecture/browse_thread/thread/ddd05f9baede023a ...thanks Jay Oliver!
protected GetTypeUnproxied ( ) : Type
Résultat System.Type

HasSameObjectSignatureAs() public méthode

You may override this method to provide your own comparison routine.
public HasSameObjectSignatureAs ( BaseObject compareTo ) : bool
compareTo BaseObject
Résultat bool