Response.TransmitFile总是返回一个空文件

时间:2019-02-25 03:06:51

标签: c# razor umbraco umbraco7

我已经创建了一种从服务器下载文件的方法。看来我可以将文件保存到客户端,但是保存的文件总是空文件(文件大小= 0KB)。

我想念我的代码吗?

我的前端代码:

@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
      Html.RenderAction("DownloadDocument", "Document", new { documentNode = Umbraco.TypedContent(CurrentPage.Id) });
}

下面是我在Document控制器中的DownloadDocument方法:

                var fileName = "myFile.docx"
                var filePath = @"D:\myFile.docx"
                Response.ContentType = "application/octet-stream";
                Response.AppendHeader("Content-Disposition", $"attachment; filename={fileName}");
                Response.TransmitFile(Server.MapPath(filePath));
                Response.Flush();
                Response.End();

P / S:     如果我在标题中包含文件长度,则会从客户端浏览器中引发失败-网络错误

Response.AddHeader("Content-Length", new System.IO.FileInfo(fileName).Length.ToString());

任何帮助将不胜感激! 谢谢!

0 个答案:

没有答案