当我查看它们时,数百个错误都消失了吗?
100s of errors that all go away when I view them?
我有数百个错误提示类型或名称空间不存在(有些是类型,有些是名称空间)。当我单击查看错误时,它最初打开文件并在有问题的代码下显示波浪线,但是在一两秒内波浪线消失,错误也消失了。
在我用"errors"打开所有文件后,所有的错误都消失了,编译正常。但是,如果我关闭任何文件,则该文件的错误会再次出现。
这发生在我尝试合并分支之后。不太确定如何继续寻找问题的根源,或者是否存在真正的问题......也许这只是 Visual Studio 中的一些错误,我需要做一些事情来清除某种缓存以解决问题?
请指教
更新:
我已经尝试了 tymtam 的所有建议,但无济于事。
但是,在删除 .vs 文件夹后,现在当我打开文件时错误甚至都没有消失,所以我也无法再通过这样做来构建。
我认为该错误可能与 dll 版本或类似的东西有关,但我已尝试重建所有 dll 并将其替换为最新版本,但这也无济于事。
IntelliSense,这可能是这些错误的来源,有时需要时间来适应由切换分支引起的变化(或者更普遍的是突然发生的代码变化)。
以下是应该有帮助的步骤,按顺序排列:
- (重新)构建解决方案
- 正在重启Visual Studio
- 正在关闭 VS 删除解决方案文件夹根目录中的
.vs
文件夹。
最后,您可以通过将错误列表 windows 显示的内容更改为 Build Only
来查看错误是否为 'real'。我建议通常将其设置为“Build + IntelliSense”,并仅在特殊情况下使用 Build Only。
关注第一个错误
更一般地说,在处理大量错误时,只查看第一个错误并解决它并构建代码是个不错的主意。一个语法错误可能导致许多错误,试图解决第二个和后续错误将是徒劳的。
我做了这两件事来解决我的问题:
我使用 WinMerge 将文件从旧分支复制到有问题的应用程序的新分支中的所有内容。
我把项目上的框架更新到最新版本了
最初,我执行了这两个步骤,除了我使用 TFS 将旧分支合并到新分支(而不是使用 WinMerge 合并 copy/overwrite 文件)并接受旧版本以解决所有冲突。
这是核选项,因为我丢失了在新分支中所做的任何更改:(。我有一个副本,我可以使用 WinMerge 尝试手动合并更改,但这确实令人沮丧。
除上述内容外,请务必查看警告(可能是信息性消息)。
就我而言,我将它们关闭以仅关注错误,而忽略了我的两个项目被设置为不同版本的 .NET 框架这一事实。
我遇到的问题是 .net 框架的版本过时。我引用的新程序集基于 4.8,但我的项目针对 4.6.1 框架。将项目文件更新到目标 4.8 修复了它。
我有数百个错误提示类型或名称空间不存在(有些是类型,有些是名称空间)。当我单击查看错误时,它最初打开文件并在有问题的代码下显示波浪线,但是在一两秒内波浪线消失,错误也消失了。
在我用"errors"打开所有文件后,所有的错误都消失了,编译正常。但是,如果我关闭任何文件,则该文件的错误会再次出现。
这发生在我尝试合并分支之后。不太确定如何继续寻找问题的根源,或者是否存在真正的问题......也许这只是 Visual Studio 中的一些错误,我需要做一些事情来清除某种缓存以解决问题?
请指教
更新:
我已经尝试了 tymtam 的所有建议,但无济于事。
但是,在删除 .vs 文件夹后,现在当我打开文件时错误甚至都没有消失,所以我也无法再通过这样做来构建。
我认为该错误可能与 dll 版本或类似的东西有关,但我已尝试重建所有 dll 并将其替换为最新版本,但这也无济于事。
IntelliSense,这可能是这些错误的来源,有时需要时间来适应由切换分支引起的变化(或者更普遍的是突然发生的代码变化)。
以下是应该有帮助的步骤,按顺序排列:
- (重新)构建解决方案
- 正在重启Visual Studio
- 正在关闭 VS 删除解决方案文件夹根目录中的
.vs
文件夹。
最后,您可以通过将错误列表 windows 显示的内容更改为 Build Only
来查看错误是否为 'real'。我建议通常将其设置为“Build + IntelliSense”,并仅在特殊情况下使用 Build Only。
关注第一个错误
更一般地说,在处理大量错误时,只查看第一个错误并解决它并构建代码是个不错的主意。一个语法错误可能导致许多错误,试图解决第二个和后续错误将是徒劳的。
我做了这两件事来解决我的问题:
我使用 WinMerge 将文件从旧分支复制到有问题的应用程序的新分支中的所有内容。
我把项目上的框架更新到最新版本了
最初,我执行了这两个步骤,除了我使用 TFS 将旧分支合并到新分支(而不是使用 WinMerge 合并 copy/overwrite 文件)并接受旧版本以解决所有冲突。
这是核选项,因为我丢失了在新分支中所做的任何更改:(。我有一个副本,我可以使用 WinMerge 尝试手动合并更改,但这确实令人沮丧。
除上述内容外,请务必查看警告(可能是信息性消息)。 就我而言,我将它们关闭以仅关注错误,而忽略了我的两个项目被设置为不同版本的 .NET 框架这一事实。
我遇到的问题是 .net 框架的版本过时。我引用的新程序集基于 4.8,但我的项目针对 4.6.1 框架。将项目文件更新到目标 4.8 修复了它。