2016-07-07 65 views
1

下面的代碼是新MVC項目中極大簡化的測試操作。該操作旨在返回包含單詞test的簡單文本文件。ASP.net MVC文件內容長度

public ActionResult FileTest() 
{ 
    return File(System.Text.Encoding.UTF8.GetBytes("test"), "text/plain", "test.txt"); 
} 

當觀看來自服務器的HTTP響應我希望看到的頭部與Content-Length: 4,代替我看到Content-Length: 122

Chrome和IE似乎完全有能力與未命中匹配應對在Content-Length節數實際返回的字節數。 Firefox(v47)無法下載該文件,無限期顯示下載的4個字節。

我的問題是:我正在見證我做錯了什麼,或者這是框架中的缺陷嗎?其次,我能做些什麼來解決這個問題?

回答

0

我交叉檢查了你的代碼,它似乎在FireFox v47上工作正常。

我建議將返回類型從「ActionResult」更改爲「FileResult」以返回文件。這可能會解決您的問題。讓我知道你是否仍然面臨同樣的問題。

+0

謝謝您的建議,但更改爲FileResult並沒有區別。 出於您對測試的興趣什麼Content-Length標題被返回爲? –

+0

內容長度爲122,但Firefox仍然下載文本文件,我可以打開它。 – Mahendra

+0

我剛剛將Firefox的安裝更新至v47.0.1,問題已解決。我無法在發佈說明中看到任何與解釋行爲有關的內容。 我仍然有興趣瞭解爲什麼MVC返回不正確的內容長度標題。 –