According to the documentation of the == operator in MSDN,
For predefined value types, the equality operator (==) returns true if th
In general, EqualityComparer should do the job with anything that implements IEquatable, or that has a sensible Equals implementation.
If, however, == and Equals are implemented differently for some reason, then my work on generic operators should be useful; it supports the operator versions of (among others):