【问题标题】:"Asynchronous operations are not allowed in this context"“在这种情况下不允许异步操作”
【发布时间】:2012-02-28 19:49:46
【问题描述】:

在调用我在this post 中询问的他自动生成的异步网络方法时,我得到了以下异常

在这种情况下不允许异步操作。页面起始 异步操作必须将 Async 属性设置为 true 并且异步操作只能在之前的页面上启动

Google 搜索结果会在页面指令中添加 Async = True,但许多人注意到这会使页面'阻塞'(这不是真正的异步操作)。那么如何在调用webservice方法的同时实现异步操作呢。

【问题讨论】:

    标签: c# exception asynchronous asmx


    【解决方案1】:

    查看this answer。我不会从那里复制/粘贴答案,但我会扩展一些讨论。

    接受的答案不是正确的。由于没有“EndInvoke”,因此每次调用此方法时都会发生资源泄漏。 See this discussion 为什么这样不行。

    建议改为启动守护线程或创建从 MSMQ 读取并在那里处理长时间运行的任务的完全不同的进程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-02
      • 2022-07-12
      • 1970-01-01
      • 1970-01-01
      • 2022-08-21
      • 1970-01-01
      相关资源
      最近更新 更多