代码之家  ›  专栏  ›  技术社区  ›  Tom Wright

CA2007是否与.NET核心应用程序相关?

  •  2
  • Tom Wright  · 技术社区  · 6 年前

    当我在我的项目上运行FxCop时,会收到大量ID为CA2007的警告。中缺少此ID the docs (它只是从CA2006跳到CA2100),但我得到的信息是:

    不要在不调用ConfigureAwait的情况下直接等待任务

    我的印象是.NETCore没有使用同步上下文,这意味着我不需要使用同步上下文 .ConfigureAwait(bool) . 当我试着用谷歌搜索它的时候,我现在只能找到关于ASP.NET核心(例如。 this blog post ).

    鉴于我找不到任何权威的东西,我开始怀疑我是否弄错了ASP.NET对一个更普遍地适用于所有.NET核心的核心更改。

    有人能给我一个明确的答案吗?

    我是否需要通过我的应用程序,并应用一个自由喷洒 ConfigureAwait ? 或者我应该在FxCop规则集中禁用CA2007吗?

    0 回复  |  直到 6 年前
        1
  •  2
  •   Sabilace    4 年前

    在某些情况下是的。如果您的代码曾被用作库或有人引入SynchronizationContext。请参阅此 article . https://devblogs.microsoft.com/dotnet/configureawait-faq/#ive-heard-configureawaitfalse-is-no-longer-necessary-in-net-core-true