【发布时间】:2010-06-17 07:20:25
【问题描述】:
在制作 WCF Web 服务时,我在使用带有 webbrowser 控件的方法时遇到了一个问题。该方法启动一个线程并使用 webbrowser 控件填写一些表单并进一步单击,等待事件处理程序触发并返回我需要的答案。该方法经过测试并在其自己的环境中工作,但在 WCF Web 服务环境中使用时,事件处理程序不会触发。结果是等待手动重置事件没有结束。这是因为新线程还是因为 Web 服务的错误事件处理?如果是,什么是合理的解决方案?
【问题讨论】:
-
只是检查一下 -
WebBrowser在 客户端,是吗? -
Web 应用程序使用 Web 服务。 Web 服务需要它自己的带有事件处理程序的浏览器元素来填充和从另一个站点获取信息。所以:Browser1 --> Web App --> Web Service --> 在其他站点上执行操作(新浏览器 --> 打开 url --> 填写 URL --> 按确定 --> 捕获响应 --> 处理答案) --> 向网络服务返回答案
-
您最好使用
HttpWebRequest或WebClient,因为它们还可以让您执行同步请求。
标签: c# wcf multithreading event-handling