0

mvc razor4でsavefileダイアログを開くにはどうすればよいですか? 通常の savefile ダイアログを使用したかったのですが、Win フォームでしか使用できないことがわかりました。だから私はグーグルで検索しましたが、良い解決策が見つかりませんでした。あることだけは

<input type="file" /> 

しかし、彼の見た目を上書きするのは問題があると思います。

私はこのようなものを持っています:

<a href="@Url.Action("ExcelExport","Home")"><img src="@Url.Content("~/images/excel_icon.png")" id="excel-export-img" /></a>

それをクリックした後にSavefileダイアログを表示したい。それに関するいくつかの資料や方法について知っている人はいますか?

ありがとう。

4

1 に答える 1

3

HTTP には必ずしも「ファイル」の概念がないことに注意してください。リクエストとレスポンスがあります。そして、それぞれにヘッダーとコンテンツがあります。したがって、ファイルの内容を、それが「ファイル」であり、そのように扱う必要があることを示すヘッダーと共に返す必要があります。もちろん、実際にどのように処理するかはブラウザ次第です。

ASP.NET MVC でこれを行う方法は、コントローラー アクションからを返すことFile()です。このようなもの:

return File("SomeFile.xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");

もちろん、File()メソッドにはいくつかのオーバーロードがあり、実際のサーバー側ファイルの名前の代わりにバイト配列またはストリームを受け入れるものもあります。

于 2013-09-26T10:43:20.570 に答える