C# razor视图上的模型在表单提交时未得到更新

C# razor视图上的模型在表单提交时未得到更新,c#,asp.net,asp.net-mvc,httpresponse,C#,Asp.net,Asp.net Mvc,Httpresponse,不能从一个HTTP请求返回两个不同的响应 下面是您的回复: I have tried ModelState.Clear(). It didn't work. 在此之后所做的任何事情都不是由服务器或客户端处理的 您的web浏览器正在下载文件,而不是停留在同一页面上。这绝对正常 如果要刷新页面,可能需要使用JavaScript客户端 这里是一个使用jQuery的小示例,假设myForm作为表单id: Response.OutputStream.Write(writeBuffer, 0, coun

不能从一个HTTP请求返回两个不同的响应

下面是您的回复:

 I have tried ModelState.Clear(). It didn't work.
在此之后所做的任何事情都不是由服务器或客户端处理的

您的web浏览器正在下载文件,而不是停留在同一页面上。这绝对正常

如果要刷新页面,可能需要使用JavaScript客户端

这里是一个使用jQuery的小示例,假设
myForm
作为表单id:

Response.OutputStream.Write(writeBuffer, 0, count);

您可能还需要将
target=“\u blank”
添加到表单标记。

您不能让HTTP响应同时执行两件事。内容可以是
text/html
(用于查看)或
application/zip
(用于下载),但不能两者都是。您需要做一些其他的事情,比如返回视图,然后通过javascript开始下载。@PaulAbbott wat是解决这个问题的方法吗?我需要用户下载zip文件。但我也希望他们能看到最新的名单。。我可以在浏览完Zipt后强制刷新页面吗?解决方法是返回视图,然后通过javascript开始下载。您需要执行第二个控制器操作,下载文件并通过javascript调用该操作。您不能先下载然后刷新页面,因为下载只是一个文件传输,下载完成后无法包含任何其他操作的“说明”。我在document ready中尝试了tht,但提交时没有调用索引页面上的任何脚本。。如何在文档下载时强制刷新页面?将刷新逻辑附加到表单提交上,或者反转逻辑并返回一个视图,其中包含指向要下载文件的链接(如Paul Abbott所建议的)。您是否建议$('#myForm').submit(函数(){location.reload();}要绑定提交事件?很抱歉打扰您,您能用一个小的JS代码更新您的答案吗?谢谢Federico..不确定是否有更好的方法,但这个解决方案目前还有效。
Response.OutputStream.Write(writeBuffer, 0, count);
$('#myForm').submit(function() {
    setTimeout(function () {
        window.location.reload();
    }, 1000); // use a timeout as big as you need
});