导出到excel在本地工作但在部署后不在服务器中工作

时间:2018-04-11 12:22:50

标签: excel azure c#-4.0

查看下面的c#代码,因为我在本地服务器上运行此代码它正在运行但在Azure中部署之后它无法正常工作。 有人,请帮我解决这个问题

public async Task<IHttpActionResult> ptoexport()
{
  string file = @"filepath";
  FileInfo fileInfo = new FileInfo(file);
  ExcelPackage p = new ExcelPackage(fileInfo);
  ExcelWorksheet myWorksheet = p.Workbook.Worksheets["Sheet1"];
  myWorksheet.Cells[5, 5].Value = 34;
  p.Save();
  return Ok("Success");
}

1 个答案:

答案 0 :(得分:0)

  

我在本地服务器上运行此代码它正在运行,但在Azure中部署之后它无法正常工作。

正如我测试的那样,我认为您在代码中提供的文件路径是本地xlsx文件路径。因此,当您在本地运行时,该方法可以找到该文件,但是当它发布到azure时它失败了。

因此,我建议您将文件上传到KUDU 更改文件路径。 我在这里上传xlsx文件并使用以下内容,它工作正常。 enter image description here

public async Task<IHttpActionResult> ptoexport()
    {
        string file = @"D:/home/site/wwwroot/new.xlsx";
        FileInfo fileInfo = new FileInfo(file);
        ExcelPackage p = new ExcelPackage(fileInfo);
        ExcelWorksheet myWorksheet = p.Workbook.Worksheets["Sheet1"];
        myWorksheet.Cells[5, 5].Value = 34;
        p.Save();
        return Ok("Success");
    }

以下是关于Azure部署无法找到文件的原因的case,您也可以参考它。