diff --git a/src/Microsoft.AspNetCore.Razor.Language/RequiredAttributeDescriptor.cs b/src/Microsoft.AspNetCore.Razor.Language/RequiredAttributeDescriptor.cs index 6da95bfd4d..6d9e6fcf7b 100644 --- a/src/Microsoft.AspNetCore.Razor.Language/RequiredAttributeDescriptor.cs +++ b/src/Microsoft.AspNetCore.Razor.Language/RequiredAttributeDescriptor.cs @@ -9,7 +9,7 @@ using System.Linq; namespace Microsoft.AspNetCore.Razor.Language { [DebuggerDisplay("{DisplayName,nq}")] - public abstract class RequiredAttributeDescriptor + public abstract class RequiredAttributeDescriptor : IEquatable { public string Name { get; protected set; } @@ -32,6 +32,21 @@ namespace Microsoft.AspNetCore.Razor.Language return errors; } } + + public bool Equals(RequiredAttributeDescriptor other) + { + return RequiredAttributeDescriptorComparer.Default.Equals(this, other); + } + + public override bool Equals(object obj) + { + return Equals(obj as RequiredAttributeDescriptor); + } + + public override int GetHashCode() + { + return RequiredAttributeDescriptorComparer.Default.GetHashCode(this); + } /// /// Acceptable comparison modes. diff --git a/src/Microsoft.AspNetCore.Razor.Language/RequiredAttributeDescriptorComparer.cs b/src/Microsoft.AspNetCore.Razor.Language/RequiredAttributeDescriptorComparer.cs index 5778c908fa..78186cfb49 100644 --- a/src/Microsoft.AspNetCore.Razor.Language/RequiredAttributeDescriptorComparer.cs +++ b/src/Microsoft.AspNetCore.Razor.Language/RequiredAttributeDescriptorComparer.cs @@ -6,7 +6,7 @@ using System.Collections.Generic; using System.Linq; using Microsoft.Extensions.Internal; -namespace Microsoft.AspNetCore.Razor.Language.Legacy +namespace Microsoft.AspNetCore.Razor.Language { /// /// An used to check equality between