ASP.NET MVCアプリケーションからIEで動作しないファイルのダウンロードに関する問題を解決しようとしています。キャッシングを有効にすると、IEでファイルをダウンロードできない
[HttpGet]
[OutputCache(Duration = 0, NoStore = true, VaryByParam = "*")]
public FileResult GetTemplate(int id)
{
var data = GetData(id);
return File(Encoding.ASCII.GetBytes(data), MimeType.Csv.Type, "template.csv");
}
ダウンロードがJavaScriptでwindow.open()
コールを使用して開始されます。
コントローラのアクションは、次のようになります。 Firefoxではうまく動作しますが、IEではうまく動作しません。
OutputCache
属性を削除した場合、IEでは問題なく動作します。
なぜOutputCacheラインがIEでダウンロードを中断しますか?
'OutputCacheAttribute'行を' [OutputCache(Duration = 1200、Location = OutputCacheLocation.Client、VaryByParam = "*"、NoStore = false)] 'に変更することで動作させることができました。私の質問はまだ成り立っていますが、私は解決策や回避策を探していません。私はIEでうまくいかない理由を理解しようとしており、説明を探しています。 – GiddyUpHorsey