Exemplo n.º 1
0
        /// <summary>
        /// Starts Tracking an Entity, it will be tracked until modified or persisted.
        /// </summary>
        /// <param name="key">Entity Key used in the Locator's Bucket</param>
        /// <param name="entity">entity to be tracked</param>
        /// <param name="isTrackingEnabled">Determines whether tracking is enabled</param>
        public static void StartTracking(string key, IEntity entity, bool isTrackingEnabled)
        {
            if (key == null)
            {
                throw new ArgumentNullException("key");
            }

            if (entity == null)
            {
                throw new ArgumentNullException("entity");
            }

            if (!entity.IsEntityTracked && isTrackingEnabled)
            {
                EntityLocator.Add(key, entity);
                entity.IsEntityTracked   = true;
                entity.EntityTrackingKey = key;
            }

            return;
        }