Пример #1
0
     private void FixupGateway(Gateway previousValue)
     {
         if (IsDeserializing)
         {
             return;
         }
 
         if (previousValue != null && previousValue.GatewayCountries.Contains(this))
         {
             previousValue.GatewayCountries.Remove(this);
         }
 
         if (Gateway != null)
         {
             if (!Gateway.GatewayCountries.Contains(this))
             {
                 Gateway.GatewayCountries.Add(this);
             }
 
             GatewayId = Gateway.Id;
         }
         if (ChangeTracker.ChangeTrackingEnabled)
         {
             if (ChangeTracker.OriginalValues.ContainsKey("Gateway")
                 && (ChangeTracker.OriginalValues["Gateway"] == Gateway))
             {
                 ChangeTracker.OriginalValues.Remove("Gateway");
             }
             else
             {
                 ChangeTracker.RecordOriginalValue("Gateway", previousValue);
             }
             if (Gateway != null && !Gateway.ChangeTracker.ChangeTrackingEnabled)
             {
                 Gateway.StartTracking();
             }
         }
     }
Пример #2
0
     public bool Equals(Gateway other)
     {
         if (ReferenceEquals(null, other)) return false;
         if (ReferenceEquals(this, other)) return true;
 		if (other.Id == 0 && Id == 0)
 			return false;
 		else
 			return other.Id == Id;
     }