首页 > 解决方案 > 在本地主机上使用 OfficeOpenXml 获取 500 服务器错误?

问题描述

我不知道为什么我在本地主机上运行时收到此错误。我收到错误加载资源失败:服务器响应状态为 500(内部服务器错误)。它首先进入 Changefile,然后进入 ToDatatable()。

  public async Task<string> ChangeFileAsync(IList<IFormFile> files)
    {
        Console.WriteLine(Path.GetExtension(files[0].FileName));
        if (Path.GetExtension(files[0].FileName)==".xlsx")
        {
            ExcelPackage package = new ExcelPackage((Stream)files[0]);
            DataTable Dt = ExcelPackageExtensions.ToDataTable(package);
        }
        return "Function worked";
    }






 internal static DataTable ToDataTable(ExcelPackage package)
    {
        ExcelWorksheet workSheet = package.Workbook.Worksheets.First(); //This line gives the error
        DataTable Dt = new DataTable();
        foreach(var firstRowCell in workSheet.Cells[1, 1, 1, workSheet.Dimension.End.Column])
        {
            Dt.Columns.Add(firstRowCell.Text);
        }
        for(var rowNumber = 2; rowNumber <= workSheet.Dimension.End.Row;rowNumber++)
        {
            var row = workSheet.Cells[rowNumber, 1,rowNumber, workSheet.Dimension.End.Column];
            var newRow = Dt.NewRow();
            foreach(var cell in row)
            {
                newRow[cell.Start.Column - 1] = cell.Text;
            }
            Dt.Rows.Add(newRow);
        }

        return Dt;
    }

标签: c#asp.net-mvc

解决方案


推荐阅读