0

我想问一下,如何在mvc razor4中打开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 中执行此操作的方法是从您的控制器 action返回一个File()。像这样的东西:

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

当然,该File()方法有几个重载,其中一些接受字节数组或流而不是实际服务器端文件的名称。

于 2013-09-26T10:43:20.570 回答