2010-09-23 31 views
2

我正在從ASP.Net下載一個xml字符串,並希望它在MS Office Infopath中打開。我將ContentType設置爲「application/ms-infopath.xml」(不確定從哪裏得到)。Response.ContentType是如何工作的?

在某些機器上,其他人可以在瀏覽器或Visual Studio或其他xml編輯器中打開xml,儘管存在Infopath。

  1. 誰保留有效的內容類型列表?
  2. 操作系統或瀏覽器用它做什麼?
  3. 我該如何強制這個XML在我選擇的程序(Infopath)中打開?

回答

1

我知道這個問題真的很老,但我有同樣的問題。

我拖着窗戶上的所有文件類型,試圖找到一個只在infopath中打開的文件類型 - 實際上只有一個! Office的每個默認安裝都將文件擴展名「.infopathxml」設置爲使用infopath打開。因此,只需將您的file = content_disposition標頭的一部分設置爲「whatever.infopathxml」即可。

XML沒有映射到任何默認程序,但往往會在任何一個人最後打開使用(通常是IE的瀏覽器或Visual Studio),但幾乎沒有人會改變什麼.infopathxml文件打開英寸

據我瞭解,它仍然留給最終用戶。內容類型指定應該如何讀取和驗證數據,但是直到最終用戶將哪個擴展映射到哪個程序。您不能強制xml在一個程序中打開,而是要指定一個zip文件應該在哪個zip程序中打開......您唯一可以做的就是使用文件擴展名,該擴展名對於該程序幾乎肯定是唯一的,例如作爲.infopathxml在這種情況下。

+0

即使2年後,這也是一個很好的答案。謝謝!但仍想知道更多信息,比如我如何註冊新的擴展,純粹是瀏覽器向操作系統請求處理擴展的應用程序,等等。 – Graeme 2012-05-16 10:50:18

+0

很好的答案,謝謝。這真的幫助了我。你搖滾! – Jesse 2013-01-17 18:55:07