public virtual void AddReportOutput(IReportOutputData report) { if (XmlReports == null) { XmlReports = new List <ReportOutputData>(); } var exists = (from x in XmlReports where x.Format == report.Format && x.ReportType == report.ReportType && x.OutputPath == report.OutputPath select x).Any(); if (!exists) { var list = report.Params == null ? null : (from p in report.Params select new NameValuePair(p.Name, p.Value)).ToList(); XmlReports.Add(new ReportOutputData() { Format = report.Format, OutputPath = report.OutputPath, ReportType = report.ReportType, XmlParams = list }); } }
public virtual void RemoveAllReports(IReportOutputData report) { Predicate <ReportOutputData> match = null; if (this.XmlReports != null) { if (match == null) { match = rr => ((rr.Format == report.Format) && (rr.ReportType == report.ReportType)) && (rr.OutputPath == report.OutputPath); } this.XmlReports.RemoveAll(match); if (this.XmlReports.Count < 1) { this.ClearReports(); } } }