public void AddRows(PublishedProviderVersion dto) { Providers.AddRows(dto); Funding.AddRows(dto); PaymentFundingLines.AddRows(dto); InformationFundingLines.AddRows(dto); Calculations.AddRows(dto); EnsureProfilingIsSetUp(dto); foreach (FundingLine fundingLine in dto.FundingLines ?? ArraySegment <FundingLine> .Empty) { if (Profiling.TryGetValue(fundingLine.TemplateLineId, out IDataTableBuilder <PublishedProviderVersion> profiling)) { profiling.AddRows(dto); } } }