お世話になっております。
ASP.NET MVC5で、ボタンクリックによるサーバーにあるファイルのダウンロード機能を実装しています。
目標:
ボタンクリック -> サーバー処理でファイル名やパスの生成 -> パスのファイルをダウンロード
(よくあるブラウザの下部にダウンロードバーが表示され、[開く]か[名前を付けて保存]となる機能です。)
ファイルへのフルパスは取得しているのですが、色々試してもうまく実装できず。。。
jsによるクライアント側処理やASP.NET MVCの処理どちらでも構いません。ここを参考にしてとかでもあればお教えいただきたいです。
よろしくお願いいたします。
現状:以下のようにクライアント側でパス使ってできないかコネコネしている状況です。
(単純にlocation.hrefでやってみたり、aタグのエレメント作ってクリックしてみたり。。。)
また色々端折っていますが、以下のようなコードでajaxのdoneでダウンロード処理ができるか、それともControllerの方で何か処理ができるのか、試しています。
パスはローカル環境下では「C:ディレクトリ/ファイル名」ですが、本番環境では「http://IPアドレス/ディレクトリ/ファイル名」となります
-- クライアント側 $.ajax({ url: actionUrl, type: "GET", data: postData, cashe: false }).done(function (data) { alert(data); //window.location.href = data; }) -- サーバー側(上記Ajaxの行き先Controller) public string GetFile(Model m) { // パス取得処理 return path; }
回答2件
あなたの回答
tips
プレビュー