Example #1
0
        /// <summary>
        ///     Returns true if MarketDefinition instances are equal
        /// </summary>
        /// <param name="other">Instance of MarketDefinition to be compared</param>
        /// <returns>Boolean</returns>
        public bool Equals(MarketDefinition other)
        {
            // credit: http://stackoverflow.com/a/10454552/677735
            if (other == null)
            {
                return(false);
            }

            return((Venue == other.Venue || Venue != null && Venue.Equals(other.Venue)) &&
                   (SettledTime == other.SettledTime || SettledTime != null && SettledTime.Equals(other.SettledTime)) &&
                   (Timezone == other.Timezone || Timezone != null && Timezone.Equals(other.Timezone)) &&
                   (EachWayDivisor == other.EachWayDivisor || EachWayDivisor != null && EachWayDivisor.Equals(other.EachWayDivisor)) &&
                   (Regulators == other.Regulators || Regulators != null && Regulators.SequenceEqual(other.Regulators)) &&
                   (MarketType == other.MarketType || MarketType != null && MarketType.Equals(other.MarketType)) &&
                   (MarketBaseRate == other.MarketBaseRate || MarketBaseRate != null && MarketBaseRate.Equals(other.MarketBaseRate)) &&
                   (NumberOfWinners == other.NumberOfWinners || NumberOfWinners != null && NumberOfWinners.Equals(other.NumberOfWinners)) &&
                   (CountryCode == other.CountryCode || CountryCode != null && CountryCode.Equals(other.CountryCode)) &&
                   (InPlay == other.InPlay || InPlay != null && InPlay.Equals(other.InPlay)) &&
                   (BetDelay == other.BetDelay || BetDelay != null && BetDelay.Equals(other.BetDelay)) &&
                   (BspMarket == other.BspMarket || BspMarket != null && BspMarket.Equals(other.BspMarket)) &&
                   (BettingType == other.BettingType || BettingType != null && BettingType.Equals(other.BettingType)) &&
                   (NumberOfActiveRunners == other.NumberOfActiveRunners || NumberOfActiveRunners != null && NumberOfActiveRunners.Equals(other.NumberOfActiveRunners)) &&
                   (EventId == other.EventId || EventId != null && EventId.Equals(other.EventId)) &&
                   (CrossMatching == other.CrossMatching || CrossMatching != null && CrossMatching.Equals(other.CrossMatching)) &&
                   (RunnersVoidable == other.RunnersVoidable || RunnersVoidable != null && RunnersVoidable.Equals(other.RunnersVoidable)) &&
                   (TurnInPlayEnabled == other.TurnInPlayEnabled || TurnInPlayEnabled != null && TurnInPlayEnabled.Equals(other.TurnInPlayEnabled)) &&
                   (SuspendTime == other.SuspendTime || SuspendTime != null && SuspendTime.Equals(other.SuspendTime)) &&
                   (DiscountAllowed == other.DiscountAllowed || DiscountAllowed != null && DiscountAllowed.Equals(other.DiscountAllowed)) &&
                   (PersistenceEnabled == other.PersistenceEnabled || PersistenceEnabled != null && PersistenceEnabled.Equals(other.PersistenceEnabled)) &&
                   (Runners == other.Runners || Runners != null && Runners.SequenceEqual(other.Runners)) &&
                   (Version == other.Version || Version != null && Version.Equals(other.Version)) &&
                   (EventTypeId == other.EventTypeId || EventTypeId != null && EventTypeId.Equals(other.EventTypeId)) &&
                   (Complete == other.Complete || Complete != null && Complete.Equals(other.Complete)) &&
                   (OpenDate == other.OpenDate || OpenDate != null && OpenDate.Equals(other.OpenDate)) &&
                   (MarketTime == other.MarketTime || MarketTime != null && MarketTime.Equals(other.MarketTime)) &&
                   (BspReconciled == other.BspReconciled || BspReconciled != null && BspReconciled.Equals(other.BspReconciled)) &&
                   (Status == other.Status || Status != null && Status.Equals(other.Status)));
        }
Example #2
0
        /// <summary>
        ///     Gets the hash code
        /// </summary>
        /// <returns>Hash code</returns>
        public override int GetHashCode()
        {
            // credit: http://stackoverflow.com/a/263416/677735
            unchecked // Overflow is fine, just wrap
            {
                var hash = 41;
                // Suitable nullity checks etc, of course :)

                if (Venue != null)
                {
                    hash = hash * 59 + Venue.GetHashCode();
                }

                if (SettledTime != null)
                {
                    hash = hash * 59 + SettledTime.GetHashCode();
                }

                if (Timezone != null)
                {
                    hash = hash * 59 + Timezone.GetHashCode();
                }

                if (EachWayDivisor != null)
                {
                    hash = hash * 59 + EachWayDivisor.GetHashCode();
                }

                if (Regulators != null)
                {
                    hash = hash * 59 + Regulators.GetHashCode();
                }

                if (MarketType != null)
                {
                    hash = hash * 59 + MarketType.GetHashCode();
                }

                if (MarketBaseRate != null)
                {
                    hash = hash * 59 + MarketBaseRate.GetHashCode();
                }

                if (NumberOfWinners != null)
                {
                    hash = hash * 59 + NumberOfWinners.GetHashCode();
                }

                if (CountryCode != null)
                {
                    hash = hash * 59 + CountryCode.GetHashCode();
                }

                if (InPlay != null)
                {
                    hash = hash * 59 + InPlay.GetHashCode();
                }

                if (BetDelay != null)
                {
                    hash = hash * 59 + BetDelay.GetHashCode();
                }

                if (BspMarket != null)
                {
                    hash = hash * 59 + BspMarket.GetHashCode();
                }

                if (BettingType != null)
                {
                    hash = hash * 59 + BettingType.GetHashCode();
                }

                if (NumberOfActiveRunners != null)
                {
                    hash = hash * 59 + NumberOfActiveRunners.GetHashCode();
                }

                if (EventId != null)
                {
                    hash = hash * 59 + EventId.GetHashCode();
                }

                if (CrossMatching != null)
                {
                    hash = hash * 59 + CrossMatching.GetHashCode();
                }

                if (RunnersVoidable != null)
                {
                    hash = hash * 59 + RunnersVoidable.GetHashCode();
                }

                if (TurnInPlayEnabled != null)
                {
                    hash = hash * 59 + TurnInPlayEnabled.GetHashCode();
                }

                if (SuspendTime != null)
                {
                    hash = hash * 59 + SuspendTime.GetHashCode();
                }

                if (DiscountAllowed != null)
                {
                    hash = hash * 59 + DiscountAllowed.GetHashCode();
                }

                if (PersistenceEnabled != null)
                {
                    hash = hash * 59 + PersistenceEnabled.GetHashCode();
                }

                if (Runners != null)
                {
                    hash = hash * 59 + Runners.GetHashCode();
                }

                if (Version != null)
                {
                    hash = hash * 59 + Version.GetHashCode();
                }

                if (EventTypeId != null)
                {
                    hash = hash * 59 + EventTypeId.GetHashCode();
                }

                if (Complete != null)
                {
                    hash = hash * 59 + Complete.GetHashCode();
                }

                if (OpenDate != null)
                {
                    hash = hash * 59 + OpenDate.GetHashCode();
                }

                if (MarketTime != null)
                {
                    hash = hash * 59 + MarketTime.GetHashCode();
                }

                if (BspReconciled != null)
                {
                    hash = hash * 59 + BspReconciled.GetHashCode();
                }

                if (Status != null)
                {
                    hash = hash * 59 + Status.GetHashCode();
                }

                return(hash);
            }
        }