我有一个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:'在此上下文中无响应。'
我尝试谷歌搜索,但仍然没有解决方案。谁能指出我的程序有什么问题?提前谢谢!
答案 0 :(得分:1)
ASP.Net(可能还有所有服务器端框架)与请求/响应机制一起工作:浏览器向服务器发送请求,服务器处理它并发送响应。之后,连接消失了。当没有请求时(或者已经处理了该请求时)服务器无法发送响应
FileSystemWatcher(仅适用于服务器端更改 - 服务器端代码无法访问客户端文件系统)将随时触发。通常很久就会发送响应并且最后一次通知机会消失。
简而言之,这将永远不会奏效。