コード例 #1
0
ファイル: ReportSettings.cs プロジェクト: rajeshwarn/Mtgdb
        private bool removeDuplicateSummaries()
        {
            bool modified = false;

            for (int k = SummaryFields.Count - 1; k >= 0; k--)
            {
                if (Enumerable.Range(0, k).Any(s =>
                                               SummaryFunctions[s] == SummaryFunctions[k] &&
                                               SummaryFields[s] == SummaryFields[k]))
                {
                    SummaryFields.RemoveAt(k);
                    SummaryFunctions.RemoveAt(k);
                    SummarySort.RemoveAt(k);

                    modified = true;
                }
            }

            return(modified);
        }
コード例 #2
0
ファイル: ReportSettings.cs プロジェクト: rajeshwarn/Mtgdb
        public bool EnsureDefaults()
        {
            bool modified = false;

            modified |= ensureNonEmpty(SeriesFields, SeriesFieldsSort, string.Empty);
            modified |= ensureNonEmpty(ColumnFields, ColumnFieldsSort, string.Empty);
            modified |= ensureNonEmpty(SummaryFields, SummarySort, string.Empty);

            bool addDefaultSummaryFunction = SummaryFunctions.Count == 0;

            modified |= addDefaultSummaryFunction;

            if (addDefaultSummaryFunction)
            {
                SummaryFunctions.AddRange(Enumerable.Repeat(Aggregates.Count, SummaryFields.Count));
            }

            modified |= removeDuplicateSummaries();

            return(modified);
        }