尝试使用EPPlus读取Excel文件在服务器上工作,但不能通过浏览器

当我发布我的项目,并在服务器运行它,它的工作。 EPPlus发现所有4个工作表,通过它们迭代,并将我的数据上传到SQL。

但是当我通过浏览器或我的同事浏览器运行时,它显示0个工作表。

任何想法,为什么这可能会发生? 这一点上的代码没有太多,但是这里有一部分:

using (ExcelPackage package = new ExcelPackage(new FileInfo(strFile))) { if (package.Workbook.Worksheets.Count <= 0) strError = "Your Excel file does not contain any work sheets"; else { foreach (ExcelWorksheet worksheet in package.Workbook.Worksheets) { 

EPPlus可以将文件加载到内存中。 你只是不这样做。 我认为,如果你这样做,你从文件系统中读取文件的可能性就会降低。 你可以把上传的文件转换成一个字节数组而不用作为一个文件,但是在我的例子中我打开了一个现有的文件。 如果您提供了如何上传文件的代码,则可以更新我的示例。

 byte[] file = File.ReadAllBytes(@"C:\file.xlsx"); using (MemoryStream ms = new MemoryStream(file)) using (ExcelPackage package = new ExcelPackage(ms)) { if (package.Workbook.Worksheets.Count == 0) strError = "Your Excel file does not contain any work sheets"; else { foreach (ExcelWorksheet worksheet in package.Workbook.Worksheets) {