예제 #1
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (ServerName.Length != 0)
            {
                hash ^= ServerName.GetHashCode();
            }
            if (ServerAddr.Length != 0)
            {
                hash ^= ServerAddr.GetHashCode();
            }
            if (ServerPort != 0)
            {
                hash ^= ServerPort.GetHashCode();
            }
            if (ServerState != 0)
            {
                hash ^= ServerState.GetHashCode();
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
예제 #2
0
        /// <summary>
        /// Returns the hash code for this instance.
        /// </summary>
        /// <returns>The hash code for this instance.</returns>
        public override int GetHashCode()
        {
            if (_cachedHashCode < 1)
            {
                unchecked
                {
                    _cachedHashCode = (ClientIPAddress != null ? ClientIPAddress.GetHashCode() : 0);
                    _cachedHashCode = (_cachedHashCode * 397) ^ ClientPort.GetHashCode();
                    _cachedHashCode = (_cachedHashCode * 397) ^ (ServerIPAddress != null ? ServerIPAddress.GetHashCode() : 0);
                    _cachedHashCode = (_cachedHashCode * 397) ^ ServerPort.GetHashCode();
                }
            }

            return(_cachedHashCode);
        }
예제 #3
0
 public override int GetHashCode()
 {
     return(((base.GetHashCode() * 13) + ServerPort.GetHashCode() * 13) + GetStrHash(DatabaseName));
 }