Response.ContentType如何工作?

时间:2010-09-23 15:07:51

标签: content-type infopath

我正在从ASP.Net下载一个xml字符串,并希望它在MS Office Infopath中打开。我将ContentType设置为“application / ms-infopath.xml”(不确定我从哪里获得)。

在某些机器上它很好,在其他机器上,xml在浏览器中打开,或者在Visual Studio或其他一些xml编辑器中打开,即使有Infopath存在。

  1. 谁保留有效内容类型列表?
  2. 操作系统或浏览器使用它做什么?
  3. 如何强制在我选择的程序(Infopath)中打开此XML?

1 个答案:

答案 0 :(得分:1)

我知道这个问题真的很老了,但我遇到了同样的问题。

我浏览了Windows上的所有文件类型,试图找到一个只在infopath中打开的文件类型 - 实际上只有一个!每个默认的office安装都将文件扩展名“.infopathxml”设置为使用infopath打开。所以只需将你的file = content_disposition标题的一部分设置为“whatever.infopathxml”。

默认情况下,xml不会映射到任何程序,但往往会在上次使用的任何人(通常是IE的查看器或视觉工作室)中打开,而几乎没有人会更改.infopathxml文件打开的内容。

据我了解,它仍留给最终用户。 Content-type指定应如何读取和验证数据,但是最终用户将哪个扩展名映射到哪个程序。您不能强制xml在一个程序中打开,而不是指定一个zip文件应该打开的zip程序...您唯一能做的就是使用几乎肯定对该程序是唯一的文件扩展名,例如在这种情况下为.infopathxml。