使用softartisans Excelwriter将ado.net数据集导出到excel工作表中

时间:2013-05-14 15:45:03

标签: officewriter

我有一个Ado.Net数据集,它有三个数据表,比如数据集名称客户和表格是帐户,购买和个人资料。我想使用softartisans ExcelWriter将它们导出到使用模板的工作表

示例

 DataSet myDataSet = new DataSet();
        myDataSet.Tables.Add("Customer");
        myDataSet.Tables.Add("Accounts");
        myDataSet.Tables.Add("Purchases");
        xlt.BindData(myDataSet,null , xlt.CreateDataBindingProperties());

我想将这些表格导出为单独的Excel工作表。

1 个答案:

答案 0 :(得分:2)

OfficeWriter的ExcelTemplate对象的BindData方法有多个overloads。接受DataSet的那个不会自动导入DataSet中的每个DataTable,它只导入第一个DataTable。如果要使用DataSet中的每个DataTable,则应使用带有DataTable的重载(请参阅documentation)。例如:

//The 2nd parameter is the dataSource name that must correspond with the first 
//part of the datamarker in your template workbook (i.e. %%=Customer.FirstName)
xlt.BindData(DS.Tables["Customer"], "Customer", xlt.CreateDataBindingProperties());

你也可以在循环中做一些事情,比如:

foreach (DataTable table in myDataSet.Tables)
   {
     xlt.BindData(table, table.TableName, xlt.CreateDataBindingProperties());
   }