In NHibernate we override Equals() and GetHashCode() to calculate entity equality.
Is the same necessary in Entity Framework?
The reason I ask is we are using EF4 with POCOs and are in the process of implementing a caching layer. The problem we have is when checking to see if an item is already attached to the object context. Currently this evaluates to false, even when the entity already exists in the current object context.