升级VS2019 16.11.5引起的error CS0246: The type or namespace name ‘FieldDescription’ could not be found (are you missing a using directive or an assembly reference?)

昨晚上看到VS2022的新的Preview版本发布,就连同VS2019一起升级到了最新版。

可没想到的是,我有个项目中的DLL引用就开始编译报错了。

昨晚上弄了几个小时,删掉引用,重新添加也不行。从GitHub上下载老版本同样编译报错。

找同事试了一下,他用的老版本的VS 2019,没有编译问题。

那可以肯定的是我本地VS2019的问题!

于是上午用VS2022打开编译,同样也是报错。

后来我就到Project属性当中看到Reference Path,以前也没关注过这个的。尝试着增加了我外部引用的DLL路径。

你猜怎么着?

没报错了!

我看了一个修改后的GitHub的Git Changes提示也没有,原来这个设置是保存在了csproj.user文件中。

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <ProjectView>ShowAllFiles</ProjectView>
  </PropertyGroup>
  <PropertyGroup>
    <ReferencePath>E:\Github\DotNet.WangCaiSoft\src\DLL\DotNet\</ReferencePath>
  </PropertyGroup>
</Project>

难道是我的ToolsVersion为Current的缘故?

哪位高手如果碰到类似情况,不让忘记这个error CS0246的报错,看看你的Reference Path增加上是否就解决了。

我还有一个猜测,就是我同时也安装了VS2022预览版的缘故?