【问题标题】:Can't cancel task in Asp.net core Action无法在 Asp.net 核心操作中取消任务
【发布时间】:2018-11-15 01:42:33
【问题描述】:

我正在尝试取消在 Asp.net Core Action 中运行的任务。 为此,我使用this github 示例。 如果在控制台中运行服务,我可以取消任务,但如果我在 IIS(或 IIS Express)下运行,任务不会取消。 我看到了类似的问题in other question。基于它,问题应该已经修复。 我正在使用 .Net 核心 2.1。

【问题讨论】:

  • 搞清楚“取消”是什么意思?您是否想在连接丢失时取消操作(即调用者关闭连接或点击浏览器中的中止按钮)?然后将HttpContext.RequestAborted 传递给您的异步方法(它是一个取消令牌)。如果不是,oyu 打算如何让用户取消它?
  • 我正在使用 javascript 中止来自客户端的请求,或者来自 WPF 客户端调用 Task.Cancel() 并将 CancellationToken 传递给服务调用
  • 上述方法你试过了吗?这是应该工作的方式。这是一个取消令牌
  • 我的问题是 HttpContext.RequestAborted.IsCancellationRequested 为假,但客户端中止操作
  • 当我使用 Kestrel 作为服务器时它正在工作,但是当服务器是 IIS 时它不工作

标签: asp.net-mvc asp.net-core .net-core kestrel-http-server kestrel


【解决方案1】:

据我所知,这是一个已知问题,尚未修复。 See more details 在 ANCM 项目页面上。

【讨论】:

  • 我希望在 2 年后解决这个问题 :) 感谢您的回复。
  • 再次推动 MS 团队提高工作效率 :)
  • 同样的问题:stackoverflow.com/questions/50110101/…。我也向 MS 团队询问了这件事……风滚草。
  • :(我们还需要解决这个问题
猜你喜欢
  • 1970-01-01
  • 2019-10-18
  • 2018-10-25
  • 2020-06-05
  • 1970-01-01
  • 2021-07-06
  • 2020-10-09
  • 2020-11-19
  • 1970-01-01
相关资源
最近更新 更多