public override int GetHashCode()
        {
            int hashCode = -363727408;

            if (DeviceId != null)
            {
                hashCode += DeviceId.GetHashCode();
            }

            if (DeviceInstallationId != null)
            {
                hashCode += DeviceInstallationId.GetHashCode();
            }

            if (DeviceName != null)
            {
                hashCode += DeviceName.GetHashCode();
            }

            return(hashCode);
        }
        public override bool Equals(object obj)
        {
            if (obj == null)
            {
                return(false);
            }

            if (obj == this)
            {
                return(true);
            }

            return(obj is DeviceDetails other &&
                   ((DeviceId == null && other.DeviceId == null) || (DeviceId?.Equals(other.DeviceId) == true)) &&
                   ((DeviceInstallationId == null && other.DeviceInstallationId == null) || (DeviceInstallationId?.Equals(other.DeviceInstallationId) == true)) &&
                   ((DeviceName == null && other.DeviceName == null) || (DeviceName?.Equals(other.DeviceName) == true)));
        }