gpt4 book ai didi

asynchronous - .net core 3.1 中的 ConfigureAwait 警告

转载 作者:行者123 更新时间:2023-12-03 23:50:23 25 4
gpt4 key购买 nike

我正在 ASP NET Core 3.1 预览版中开发服务器,现在我看到了我所有的 async调用时的方法 await我得到 CA2007警告(就像某些任务异步运行时一样)。

.NET Core 3.1 中异步等待的工作方式是否有任何我不知道的重大变化,因此我应该使用 ConfigureAwait ?

P.S 如果没有变化,有没有办法让它停止突出显示所有 await的绿色,我没有使用 configureawait ?

最佳答案

您在问题中指定了 ASP.NET Core 3.1,但没有指定您来自哪个版本。但是,在 ASP.NET Core 中(从一开始?)你不需要调用 ConfigureAwait(false)来自 ASP.NET 核心。见:ASP.NET Core SynchronizationContext通过斯蒂芬克利里。
为了停止警告,我把它放在我的 GlobalSuppressions.cs 中:

using System.Diagnostics.CodeAnalysis;

[assembly: SuppressMessage("Design", "RCS1090:Call 'ConfigureAwait(false)'.",
Justification = "ASP.NET Core doesn't have a SynchronizationContext. https://blog.stephencleary.com/2017/03/aspnetcore-synchronization-context.html",
Scope = "NamespaceAndDescendants",
Target = "YourProjectNamespace.Controllers")]
请注意 Target = "YourProjectNamespace.Controllers" .我试图具体说明我在哪里抑制警告。由于我无法控制从哪里调用我的库代码,我想确保我的库仍然调用 ConfigureAwait(false) .但是在 ASP.NET Core Controller 中我不需要,因此抑制。

关于asynchronous - .net core 3.1 中的 ConfigureAwait 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58801212/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com