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

C# 如何同时返回文件和强类型数据?,c#,.net,asp.net-mvc,file,C#,.net,Asp.net Mvc,File,我使用的是asp.net mvc 1.0,我想返回一个XML文件,但我也想返回一个强类型数据,以便更新一些字段 与此类似,XML文件将包含未能插入数据库的用户。因此,我希望它显示为一个对话框保存asp.net mvc return file()的功能 但是,我也希望在页面上返回一些值,比如未能添加多少用户,在哪里添加了多少用户,等等 所以我想对类文件使用scafolding,我想传递它。如果这是一个视图,我可以将其作为对象模型传递,但在File()中看不到该视图的参数 我也不想将xml文件保存到

我使用的是asp.net mvc 1.0,我想返回一个XML文件,但我也想返回一个强类型数据,以便更新一些字段

与此类似,XML文件将包含未能插入数据库的用户。因此,我希望它显示为一个对话框保存asp.net mvc return file()的功能

但是,我也希望在页面上返回一些值,比如未能添加多少用户,在哪里添加了多少用户,等等

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


我也不想将xml文件保存到硬盘上,我想通过内存来完成。因此,请在页面上显示一个链接,以下载文件,并显示我不需要的数据。

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

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

我不确定如何像许多下载网站一样优雅地使用JavaScript将文件吐出的具体细节

编辑: 我找到了如何优雅地自动化下载过程,请查看以下问题:


Hmm这太糟糕了,因为这意味着我必须将文件保存在硬盘上,而我宁愿通过mememory来保存。不一定。您可以将其保存在缓存/数据库/会话中,并在访问时将其删除。只需创建一个单独的操作,它接受某种类型的ID,并从您选择的任何数据源返回正确的内容。