private static string getWorksheets(DataSet source) { int DataTableIncrement = 0; string str = "NameDisplay"; var sw = new StringWriter(); sw.Write("<Worksheet ss:Name=\"SoftwareListReport.xls\"><Table><Row><Cell ss:StyleID=\"s62\"><Data ss:Type=\"String\"></Data></Cell></Row> ");//</Table></Worksheet> if (source == null || source.Tables.Count == 0) { sw.Write("<Worksheet ss:Name=\"SoftwareListReport\"><Table><Row><Cell ss:StyleID=\"s62\"><Data ss:Type=\"String\"></Data> </Cell></Row></Table></Worksheet>"); return sw.ToString(); } foreach (DataTable dt in source.Tables) { if (dt.Rows.Count == 0) sw.Write("<Worksheet ss:Name=\"" + replaceXmlChar(dt.TableName) + "\"><Table><Row><Cell ss:StyleID=\"s62\"><Data ss:Type=\"String\"></Data></Cell></Row>");// </Table></Worksheet> else { for (int i = 0; i < dt.Rows.Count; i++) { if ((i % rowLimit) == 0) { if (DataTableIncrement == 0) { sw.Write("<Row>"); foreach (DataColumn dc in dt.Columns) { sw.Write(string.Format( "<Cell ss:StyleID=\"BoldColumn\"><Data ss:Type=\"String\">{0}</Data></Cell>",replaceXmlChar(dc.ColumnName))); } sw.Write("</Row>\r\n"); } else { sw.Write("<Row>"); foreach (DataColumn dc in dt.Columns) { if (dc.ColumnName == str) { sw.Write( string.Format( "<Cell ss:StyleID=\"BoldColumn\"><Data ss:Type=\"String\">{0}</Data></Cell>", replaceXmlChar(""))); } } sw.Write("</Row>\r\n"); } } if (DataTableIncrement == 0) { sw.Write("<Row>\r\n"); foreach (DataColumn dc in dt.Columns) { sw.Write( string.Format("<Cell ss:StyleID=\"s62\"><Data ss:Type=\"String\">{0}</Data></Cell>", replaceXmlChar(dt.Rows[i][dc.ColumnName].ToString()))); } sw.Write("</Row>\r\n"); } else { sw.Write("<Row>\r\n"); foreach (DataColumn dc in dt.Columns) { if (dc.ColumnName == str) { sw.Write( string.Format("<Cell ss:StyleID=\"s62\"><Data ss:Type=\"String\">{0}</Data></Cell>", replaceXmlChar(dt.Rows[i][dc.ColumnName].ToString()))); } } sw.Write("</Row>\r\n"); } } DataTableIncrement++; } } sw.Write("</Table></Worksheet>"); return sw.ToString(); }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)