事件中,在此上下文中无法响应

时间:2017-12-01 13:52:56

标签: c# asp.net web

我有一个ASP.NET网页调用page1。在Page_Load()中,我创建了一个观察 var watcher = new FileSystemWatcher(@"D:\"); watcher.EnableRaisingEvents = true; watcher.IncludeSubdirectories = true; watcher.Filter = "score.txt"; 文件更改的观察者:

score.txt

我希望在watcher.Changed += (o, a) => { Response.Redirect(Request.RawUrl); }; 文件更改时刷新页面,因此我添加了这样的事件:

Response.Redirect(Request.RawUrl)

不幸的是,当我手动更改score.txt文件并保存它时,VS2017会在if traffic_results.get('rows', []): 处抛出异常: System.Web.HttpException:'在此上下文中无响应。'

我尝试谷歌搜索,但仍然没有解决方案。谁能指出我的程序有什么问题?提前谢谢!

1 个答案:

答案 0 :(得分:1)

ASP.Net(可能还有所有服务器端框架)与请求/响应机制一起工作:浏览器向服务器发送请求,服务器处理它并发送响应。之后,连接消失了。当没有请求时(或者已经处理了该请求时)服务器无法发送响应

FileSystemWatcher(仅适用于服务器端更改 - 服务器端代码无法访问客户端文件系统)将随时触发。通常很久就会发送响应并且最后一次通知机会消失。

简而言之,这将永远不会奏效。