我正在编写一个程序,该程序必须在客户端计算机上创建一个 excel 文件,然后在他们保存并更新它之后,我需要再次导入它并将更改应用于我的数据库。它的导出位工作正常,但是当我从 Web 应用程序导入时,我的工作簿中的工作表为零。如果我在我的开发机器上运行它,即网站与文件所在的机器在同一台机器上运行,那么它工作正常。
我的代码如下:
try
{
Productsfile = new FileInfo(PathandFileName);
}
catch (Exception ex)
{
lblStatus.Text = string.Format("Error getting file info {0}", ex.Message);
return;
}
lblStatus.Text += "File Opened succesfully " + Productsfile.FullName + Environment.NewLine;
//Open and read file
try
{
using (ExcelPackage datafile = new ExcelPackage(Productsfile))
{
ExcelWorkbook wkb = datafile.Workbook;
if (wkb != null)
{
lblStatus.Text += string.Format("The workbook is not null and there are {0} worksheets", wkb.Worksheets.Count) + Environment.NewLine;
我已经确认代码到达最后一个标签更新,这告诉我工作簿中有零个工作表,但重要的是工作簿本身不为空。
当我们创建导出时,使用了以下代码,它将数据流从服务器传输到客户端 - 我想知道是否需要扭转它:
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment; filename=Products.xlsx");
Response.BinaryWrite(pck.GetAsByteArray());
Response.End();