Exemple #1
0
        /// <summary>
        /// Corrige l'état de la propriété de navigation Ref4.
        /// </summary>
        private void FixupRef4(Ref4 previousValue)
        {
            if (IsDeserializing)
            {
                return;
            }

            if (previousValue != null && previousValue.Ref4Actions.Contains(this))
            {
                previousValue.Ref4Actions.Remove(this);
            }

            if (Ref4 != null)
            {
                if (!Ref4.Ref4Actions.Contains(this))
                {
                    Ref4.Ref4Actions.Add(this);
                }

                RefId = Ref4.RefId;
            }
            if (ChangeTracker.ChangeTrackingEnabled)
            {
                ChangeTracker.RecordValue("Ref4", previousValue, Ref4);
                if (Ref4 != null && !Ref4.ChangeTracker.ChangeTrackingEnabled)
                {
                    Ref4.StartTracking();
                }
            }
        }