0
我正在上传excel文件。我将它转换为datatable
,如下所示。上传Excel表并将其映射到不同的模型类
public static DataTable ConvertExcelFileToDataTable(HttpPostedFileBase upload)
{
// ExcelDataReader works with the binary Excel file, so it needs a FileStream
// to get started. This is how we avoid dependencies on ACE or Interop:
Stream stream = upload.InputStream;
IExcelDataReader reader = null;
if (upload.FileName.EndsWith(".xls"))
{
reader = ExcelReaderFactory.CreateBinaryReader(stream);
}
else if (upload.FileName.EndsWith(".xlsx"))
{
reader = ExcelReaderFactory.CreateOpenXmlReader(stream);
}
reader.IsFirstRowAsColumnNames = true;
DataTable dtProductCatalog = reader.AsDataSet().Tables[0];
reader.Close();
return dtProductCatalog;
}
现在我想建立一个映射器类型的事情将包含哪些datatable column
将其转换到模型。然后将datatable
转换为相应的模型列表。我不知道如何开始。
我们如何在一个模型中保持3列,其他4个使用这种方法? – Sana
我已将设计更改为您所需的。该模型现在是“Model1”。工厂现在采用您想要填充的型号名称。每个模型都会有自己的可覆盖的填充方法,该方法使用数据表,以便可以根据需要采用任何列值来填充字段。 – Wheels73
好,是否有任何方式之间的Excel列映射到不同模型的列表直接没有数据表步 – Sana