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之外的某些类,则可以。
答案 0 :(得分:1)
您应该将其写入文件,然后在处理后删除它,因为库可能需要加载一些数据而不是全部,并且可能需要多次引用该文件。