Beispiel #1
0
        internal string GetChangeText()
        {
            this.ObserveUntrackedObjects();
            // Must apply inferred deletions only after any untracked objects
            // are tracked
            this.ApplyInferredDeletions();
            this.BuildEdgeMaps();

            // append change text only
            StringBuilder changeText = new StringBuilder();

            foreach (TrackedObject item in this.GetOrderedList())
            {
                if (item.IsNew)
                {
                    item.SynchDependentData();
                    _changeDirector.AppendInsertText(item, changeText);
                }
                else if (item.IsDeleted)
                {
                    _changeDirector.AppendDeleteText(item, changeText);
                }
                else if (item.IsPossiblyModified)
                {
                    item.SynchDependentData();
                    if (item.IsModified)
                    {
                        _changeDirector.AppendUpdateText(item, changeText);
                    }
                }
            }
            return(changeText.ToString());
        }
Beispiel #2
0
        internal string GetChangeText()
        {
            ObserveUntrackedObjects();
            ApplyInferredDeletions();
            BuildEdgeMaps();
            var stringBuilder = new StringBuilder();

            foreach (var ordered in GetOrderedList())
            {
                if (ordered.IsNew)
                {
                    ordered.SynchDependentData();
                    changeDirector.AppendInsertText(ordered, stringBuilder);
                }
                else if (ordered.IsDeleted)
                {
                    changeDirector.AppendDeleteText(ordered, stringBuilder);
                }
                else if (ordered.IsPossiblyModified)
                {
                    ordered.SynchDependentData();
                    if (ordered.IsModified)
                    {
                        changeDirector.AppendUpdateText(ordered, stringBuilder);
                    }
                }
            }
            return(stringBuilder.ToString());
        }