为什么总有一个额外的扩展名.sdx附加到我的文件?

时间:2012-11-23 22:43:34

标签: asp.net asp.net-mvc-3 firefox razor content-disposition

我在这里遇到一个奇怪的问题:在ASP.NET控制器中我这样做:

    public ActionResult ExportTex()
    {
        Response.ContentType = "text/plain";
        Response.AddHeader("Content-Disposition", "attachment;filename=\"" + Server.HtmlEncode("overview.tex") + "\"");
        return View(_model);
    }

这应该使我的浏览器(FireFox 17)打开文件下载对话框并使用相应的文件名进行下载。然而,无论我如何在Content-Disposition标头中命名文件(即,文件名),总是会将扩展名“.sdx”附加附加添加到提供的扩展名 .tex 通过FireFox下载时,文件名为 overview.tex.sdx

如果有人可以向我解释这个额外的扩展来自哪里,我将非常感激。

只有FireFox才会这样。 Chromium的作用就像一个魅力。

//编辑根据要求,这是FireFox获取的标题:

X-SourceFiles:=?UTF-8?[... doesn't matter I guess]?=
X-Powered-By:ASP.NET
X-AspNetMvc-Version:4.0
X-AspNet-Version:4.0.30319
Vary:Accept-Encoding
Set-Cookie:.ASPXROLES=; expires=Mon, 11-Oct-1999 22:00:00 GMT; path=/; HttpOnly
Server:Microsoft-IIS/8.0
Date:Sat, 24 Nov 2012 15:13:40 GMT
Content-Type:text/plain; charset=utf-8
Content-Length:7975
Content-Encoding:gzip
Content-Disposition:attachment;filename="overview.tex"
Cache-Control:private, s-maxage=0

1 个答案:

答案 0 :(得分:0)

这确实很奇怪,因为如果内容类型是“text / plain; charset = utf-8”,Firefox不应该进行内容类型嗅探。

你能在多台机器上重现这个吗?什么平台?如果是Windows,您是否安装了任何软件来处理“sdx”(搜索注册表...)。