Пример #1
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (MessageType != null ? MessageType.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ CommunicationType.GetHashCode();
         hashCode = (hashCode * 397) ^ RouteType.GetHashCode();
         hashCode = (hashCode * 397) ^ (int)Priority;
         hashCode = (hashCode * 397) ^ Exclusive.GetHashCode();
         hashCode = (hashCode * 397) ^ (LocalContext != null ? LocalContext.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (RemoteBoundedContext != null ? RemoteBoundedContext.GetHashCode() : 0);
         hashCode = m_Hints.Keys.OrderBy(k => k).Aggregate(hashCode, (h, key) => (h * 397) ^ key.GetHashCode());
         hashCode = m_Hints.Values.OrderBy(v => v).Aggregate(hashCode, (h, value) => (h * 397) ^ (value != null?value.GetHashCode():0));
         return(hashCode);
     }
 }