首页 > 解决方案 > 打开文件时 Intellisense 警告消失/出现

问题描述

出现两个单独的问题;不确定它们是否是相同的根本原因,现在进入一个问题。

我正在尝试将项目升级到 C#8 并使用可为空的引用类型。因此,在 .csproj 中,我将以下内容放入每个<PropertyGroup>...</PropertyGroup>组中:

<LangVersion>8</LangVersion>
<Nullable>enable</Nullable>
<WarningsAsErrors>CS8600;CS8601;CS8602;CS8603;CS8604</WarningsAsErrors>

然后,我检查并替换了 ReSharper[CanBeNull]的可为空类型。

现在,当我编译时,我得到了一堆错误和警告——CS8603、CS8601、CS8604、CS8614 等。

我的错误列表配置为显示“Build + Intellisense”。当我通过双击其中一个错误打开文件时,半秒钟 t 正确显示,为错误给出红色下划线 - 然后错误消失(来自错误列表和编辑器本身的下划线),有时会出现 CS8632 警告。将错误列表更改为“仅构建”将使错误再次正确显示,但仅在错误列表中 - 而不是在编辑器的错误突出显示中。

所以,我的问题:

  1. 如何使错误突出显示不会消失?
  2. 如何让 CS8632 不显示?我对这个问题的理解是,将 .csproj 添加<Nullable>enable</Nullable>到 .csproj 应该可以做到这一点。

我正在使用 VS2019 并且 .csproj 是一个 .NET Framework 4.7.2 类库,如果相关的话。

标签: visual-studiowarningsnullablec#-8.0

解决方案


推荐阅读