in edge-hub/core/src/Microsoft.Azure.Devices.Edge.Hub.Core/identity/service/ServiceIdentity.cs [111:126]
public bool Equals(ServiceIdentity other)
{
if (ReferenceEquals(null, other))
return false;
if (ReferenceEquals(this, other))
return true;
return string.Equals(this.Id, other.Id)
&& string.Equals(this.DeviceId, other.DeviceId)
&& this.ModuleId.Equals(other.ModuleId)
&& ((this.Capabilities != null && other.Capabilities != null && Enumerable.SequenceEqual(this.Capabilities, other.Capabilities)) || (this.Capabilities == null && other.Capabilities == null))
&& Equals(this.Authentication, other.Authentication)
&& this.Status == other.Status
&& string.Equals(this.GenerationId, other.GenerationId)
&& this.DeviceScope.Equals(other.DeviceScope)
&& ((this.ParentScopes != null && other.ParentScopes != null && Enumerable.SequenceEqual(this.ParentScopes, other.ParentScopes)) || (this.ParentScopes == null && other.ParentScopes == null));
}