1

FileHelpers的捆绑示例之一显示了如何从 Microsoft Excel 工作表中提取和插入记录,如下所示:

定义一个类,其成员对应于输入 Excel 文件中的列

[DelimitedRecord("|")]
public class CustomersVerticalBar
{
    public string CustomerID;
    public string CompanyName;
    public string ContactName;
    public string ContactTitle;
    public string Address;
    public string City;
    public string Country;
}

然后使用 ExcelDataStorage 提取记录如下:

ExcelStorage provider = new ExcelStorage(typeof(CustomersVerticalBar));
provider.StartRow = 3;
provider.StartColumn = 2;           
provider.FileName = "Customers.xls";
CustomerVerticalBar[] res = (CustomerVerticalBar[]) provider.ExtractRecords();

问题是如果没有输入 Excel 文件,但输入只能作为来自上传文件的输入流(例如来自 HttpPostedFileBase),那么在这种情况下解决方案是什么,因为 ExcelDataStorage 只将文件名作为输入而不是输入流?如果解决方案使用 ExcelDataStorage 以外的其他类,则可以。

4

1 回答 1

1

您应该将其写入文件,然后在处理后根据需要将其删除,因为库可能需要加载部分数据而不是全部数据,并且可能需要多次引用该文件。

于 2013-10-30T08:55:56.820 回答