c# – 只有在下载一次后,才能投放

前端之家收集整理的这篇文章主要介绍了c# – 只有在下载一次后,才能投放前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们有这个代码可以下载:
public class downloadRelease : IHttpHandler {

    public void ProcessRequest (HttpContext context) {

        -- snip --

        context.Response.Clear();
        context.Response.ContentType = "application/octet-stream";
        context.Response.AddHeader("Content-Disposition","attachment; filename=" + OriginalFileName);
        context.Response.WriteFile(Settings.ReleaseFileLocation + ActualFileName);

        // Log download
        Constructor.VersionReleaseDownload.NewReleaseDownload(ActualFileName);

它的工作正常,除了日志下载代码运行,一旦下载开始看似,而不是下载完全按照我们的预期.

有人可以解释为什么这样做,以及如何更改它,以便在完成时只记录?我们不想计算部分下载.

解决方法

这个 blog post与您的解决方案完全相同.
Response.Buffer = false;
Response.TransmitFile("Tree.jpg");
Response.Close();
// logging here

猜你在找的C#相关文章