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()); }
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()); }