コード例 #1
0
        public CompareResultSet Clone()
        {
            var clone = new CompareResultSet();

            foreach (var kvp in this)
            {
                clone[kvp.Key] = kvp.Value.Clone();
            }

            return(clone);
        }
コード例 #2
0
        public CompareResultSet CompareAll()
        {
            var result = new CompareResultSet();

            foreach (var comparer in this.comparerList)
            {
                var comparisonResult = Compare(comparer);
                result[comparer.EntityName] = comparisonResult;
            }
            return(result);
        }
コード例 #3
0
        public CompareResultSet CompareAll(CompareResultSet previousResults, IReadOnlyCollection <string> entitiesToCompare)
        {
            if (previousResults is null)
            {
                throw new ArgumentNullException(nameof(previousResults));
            }
            if (entitiesToCompare is null)
            {
                throw new ArgumentNullException(nameof(entitiesToCompare));
            }

            var result = previousResults.Clone();

            foreach (var comparer in this.comparerList.Where(c => entitiesToCompare.Contains(c.EntityName)))
            {
                var comparisonResult = Compare(comparer);
                result[comparer.EntityName] = comparisonResult;
            }
            return(result);
        }