예제 #1
0
        public override int GetHashCode()
        {
            unchecked
            {
                var hashCode = (int)Type;
                hashCode = (hashCode * 397) ^ (Name != null ? Name.GetHashCode() : 0);
                hashCode = (hashCode * 397) ^ (PosterUrl != null ? PosterUrl.GetHashCode() : 0);
                hashCode = (hashCode * 397) ^ (Description != null ? Description.GetHashCode() : 0);

                var hash = 17;
                foreach (var schedule in Schedules)
                {
                    hash *= 23;
                    hash += schedule.GetHashCode();
                }

                hashCode = (hashCode * 397) ^ (Schedules != null ? hash : 0);
                hashCode = (hashCode * 397) ^ (SourceUrl != null ? SourceUrl.GetHashCode() : 0);
                return(hashCode);
            }
        }