INNER CODE UNIT · C#

BaseEqualityComparer

BlueshiftSoftware/EntityFrameworkCore · src/Blueshift.EntityFrameworkCore.MongoDB.SampleDomain/_Comparers.cs:15

    public abstract class BaseEqualityComparer<T> : EqualityComparer<T>
    {
        public override int GetHashCode(T obj)
            => obj?.GetHashCode() ?? throw new ArgumentNullException(nameof(obj));

        public sealed override bool Equals(T item1, T item2)
            => (item1 == null && item2 == null)
               || (item1 != null && item2 != null
                   && MemberwiseEquals(item1, item2));

        protected abstract bool MemberwiseEquals(T item1, T item2);
    }

    public static class EqualityComparerExtensions
    {
        public static bool CompareCollections<T>(
            this EqualityComparer<T> equalityComparer,
            ICollection<T> collection1,

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…