ユーザーにダウンロードさせたくない小さなJsonファイルを生成しています。だから私はブラウザがユーザーにファイルをダウンロードするように促したい.
関連する質問で提案されている多くの回答を試しましたが、うまくいきません。
リクエストはアクションリンクをクリックすることで行われます:
@Ajax.ActionLink("Generate JSON", "GenerateOcJson", new AjaxOptions { HttpMethod = "POST" })
私はもう試した:
var cd = new System.Net.Mime.ContentDisposition { FileName = fileName, Inline = false };
Response.AppendHeader("Content-Disposition", cd.ToString());
return File(Encoding.UTF8.GetBytes(jsonString),
"application/json",
string.Format(fileName));
と:
Response.Clear();
Response.ContentType = "application/json";
Response.AppendHeader("Content-Disposition", "attachment; filename=foo.json");
Response.Write(jsonString);
Response.End();
しかし、ブラウザはファイルをダウンロードしません。私は MVC3 を使用しており、このメソッドはアクションリンクによって呼び出されます。POST および GET リクエストを試しました。
Chrome でリクエストを調べると、正しい json がブラウザのレスポンスに書き込まれていることがわかります。
手がかりはありますか?事前にthnx