Example #1
0
        private ITemplateFile ExportToTemplateFile(string reportName, IEnumerable <string> columnNames, IEnumerable <IEnumerable <object> > contentList)
        {
            var templateFile = new TemplateFile();
            var sheet        = templateFile.CreateTemplateSheetDataStore(reportName, 1);

            //Create data rows with associated column names to be fed into the sheet.
            var dataRows = new List <Dictionary <string, object> >();

            foreach (var content in contentList)
            {
                var dataRow = new Dictionary <string, object>();

                for (var i = 0; i < columnNames.Count(); i++)
                {
                    var    colName = columnNames.ElementAt(i).ToLower();
                    object value   = content.ElementAtOrDefault(i);
                    dataRow[colName] = value;
                }

                dataRows.Add(dataRow);
            }

            sheet.WriteColumnNames(columnNames);
            sheet.WriteDataRows(dataRows);

            return(templateFile);
        }