在我的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
答案 0 :(得分:1)
在web.config的system.web节点中,更改或添加以下内容,其中xxxx是相应的文件大小(KB)。
<httpRuntime maxRequestLength="xxxx">
https://msdn.microsoft.com/en-us/library/e1f13641(v=vs.71).aspx