【问题标题】:.NET Prompt a Save As dialog on download.NET 下载时提示另存为对话框
【发布时间】:2018-12-23 20:25:00
【问题描述】:

我正在尝试以下操作,如此处所示:

       System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;

        response.ClearContent();
                            response.Clear();
                            response.ContentType = "video/mp4";
                            response.AddHeader("Content-Type", "video/mp4");
                            response.AddHeader("Content-Disposition", "attachment; filename=" + filename + "; ");
         response.WriteFile(sourcepath + filename);
   response.End();

但是没有打开对话框,我不知道它保存文件的位置。

谢谢

【问题讨论】:

  • 是什么浏览器?其他浏览器也会出现这种情况吗?
  • @shahkalpesh 仅在 Chrome 中尝试过
  • 你显示的代码不应该打开一个对话框,它只会保存到你在代码中指定的源路径,如果你想弹出一个对话框,我认为你需要类似stackoverflow.com/questions/19972266/…
  • 顺便说一句,这段代码不会总是打开保存对话框。为此,请将"video/mp4" 替换为"application/octet-stream"
  • 您可能有错误并且没有发送任何内容 - 或者如果您使用 Firefox 并且这是一个视频 (mp4),它会自动保存 - 检查您的浏览器设置

标签: c# asp.net .net asp.net-mvc asp.net-web-api


【解决方案1】:

我认为你有两个选择:

  1. 将 Content/Type 更改为“application/octet-stream”(如 @Xaqron 所说)。
  2. 使用HTML5 download attribute 如果您在 HTML 中使用锚标记或类似的东西来重定向到下载。

【讨论】:

  • 2.从不告诉别人你知道的一切? (对不起,错误的妙语:-|)
猜你喜欢
  • 2021-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多