有时在下载Excel输出文件时出错

时间:2017-04-04 09:55:45

标签: c# asp.net

在我的ASP.NET Web应用程序中,下载输出Excel文件有时会导致错误。在这种情况下,文件未正确下载,而是使用XML数据下载,或者我收到错误:

  

无法下载文件错误

点击“重试”足够的时间使其在IE浏览器中工作。

注意:输出文件是从托管应用程序的IIS服务器下载的。即C:\inetpub\wwwroot\MyWebApplication\OutputFiles

我使用以下代码下载文件:

Response.Clear();
Response.ClearHeaders();
Response.ClearContent();
Response.ContentType = "Application/txt";

string strFileName = (((ASPxButton)sender).CommandArgument).ToString();
string FilePath = MapPath("~/OutputFiles/" + jobNumber + "/" + strFileName);

Response.AddHeader("Content-Disposition", "attachment; filename=" + strFileName);
Response.TransmitFile(FilePath);

Response.Flush();
System.Web.HttpContext.Current.ApplicationInstance.CompleteRequest();
Response.Close();

上面的代码工作正常,但我不知道为什么有些错误。如何解决这个问题?请指教我。

更新: 文件无法下载 ”以下情况发生错误, 两个用户,并行从不同路径下载输出文件。 I.e(在IE浏览器中)user1单击下载&保存按钮,同时user2点击下载&保存按钮(用户从IIS目录中的不同路径下载不同的文件)。这意味着,一个用户尝试下载文件而另一个文件已经被另一个用户下载。

如何在并行下载时修复此问题?

谢谢, Kavin.S

1 个答案:

答案 0 :(得分:1)

在web.config的system.web节点中,更改或添加以下内容,其中xxxx是相应的文件大小(KB)。

<httpRuntime maxRequestLength="xxxx">

https://msdn.microsoft.com/en-us/library/e1f13641(v=vs.71).aspx