如何同时返回文件和强类型数据?

时间:2010-05-04 20:42:05

标签: c# .net asp.net-mvc file

我正在使用asp.net mvc 1.0并且我想返回一个XML文件,但我还想返回一个强类型数据,以便我可以更新一些字段。

与XML文件类似,将包含未能插入数据库的用户。所以我希望它显示为一个对话框保存框,asp.net mvc返回file()会做什么。

但是我也希望在页面上返回诸如无法添加的用户数量,添加的用户数量等值。

所以我想对我要传递的类文件使用scafolding。如果这是一个视图,我可以将它作为对象模型传递,但我没有在File()中看到它的参数。

我也不想将xml文件保存到我希望通过内存执行的硬盘上。因此,有一个链接将显示在页面上以下载文件并显示我想要的数据。

1 个答案:

答案 0 :(得分:1)

我可能错了,但我认为你需要使用JavaScript。你要做的是HTTP的限制,根据我对HTTP的理解,你只能为每个响应返回一种文件类型,因为协议是request->response

除了ViewData中的XML文件名之外,您还可以让MVC返回强类型视图。然后让JavaScript函数将window.location属性更改为文件的URL(或创建一个新窗口)。

我不确定如何优雅地将JavaScript吐出文件的确切细节,就像很多下载网站都有的那样。

编辑:

我找到了如何gracefully自动执行下载过程,请查看以下问题:

JavaScript automatic download of a file