C# 如何同时返回文件和强类型数据?
我使用的是asp.net mvc 1.0,我想返回一个XML文件,但我也想返回一个强类型数据,以便更新一些字段 与此类似,XML文件将包含未能插入数据库的用户。因此,我希望它显示为一个对话框保存asp.net mvc return file()的功能 但是,我也希望在页面上返回一些值,比如未能添加多少用户,在哪里添加了多少用户,等等 所以我想对类文件使用scafolding,我想传递它。如果这是一个视图,我可以将其作为对象模型传递,但在File()中看不到该视图的参数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文件保存到
我也不想将xml文件保存到硬盘上,我想通过内存来完成。因此,请在页面上显示一个链接,以下载文件,并显示我不需要的数据。我可能错了,但我认为您需要使用JavaScript。您试图做的是限制HTTP,根据我对HTTP的理解,每个响应只能返回一种文件类型,因为协议是
请求->响应
除了ViewData中的XML文件名之外,还可以让MVC返回强类型视图。然后使用JavaScript函数将window.location
属性更改为文件的URL(或创建一个新窗口)
我不确定如何像许多下载网站一样优雅地使用JavaScript将文件吐出的具体细节
编辑:
我找到了如何优雅地自动化下载过程,请查看以下问题:
Hmm这太糟糕了,因为这意味着我必须将文件保存在硬盘上,而我宁愿通过mememory来保存。不一定。您可以将其保存在缓存/数据库/会话中,并在访问时将其删除。只需创建一个单独的操作,它接受某种类型的ID,并从您选择的任何数据源返回正确的内容。