Jef*_*f E 65 c# visual-studio visual-studio-2015
今天我在项目中突然遇到问题,单击Go To Definition会给我一个奇怪的错误:"无法导航到插入符号下的符号."
我首先注意到通过NuGet 安装Costura.Fody后的一段时间.我已经卸载了它,但问题仍然存在.我多次清理并重建了解决方案.在我的git提交历史中,在此开始发生的时间点之前或之后,没有任何"Fody"或"Costura"的实例,所以我认为我的.gitignore文件中的一个卡在一个坏的州.
如果目标定义在另一个文件中,则只会出现此问题; 转到当前打开的文件中的内容定义工作正常.Peek Definition也可以正常工作.其他解决方案/项目也可以正常工作 - 只有这一点才会导致问题.
我正在使用Visual Studio 2015. 2013版本似乎没有出现此问题.
为什么会出现此错误,如何解决?
小智 104
我遇到了同样的问题.我做了以上所有评论中提到的所有步骤.它没用.但是当我关闭Visual Studio时,删除了".vs"文件夹(在解决方案文件夹中),然后重新打开Visual Studio.它现在就像一个魅力.问题消失了.
fab*_*cio 64
最近几天我得到了这个错误,每天至少两次......真烦人!这里提出的解决方案都没有对我有用.我发现了什么,因为很难找到我在这里写下来的,是:
免责声明:我正在使用Xamarin
考虑@OzSolomon和@xCasper所说的:
@OzSolomon
知道这会重置许多IDE自定义,包括已安装的插件.
在使用/ resetuserdata之前,请确保您对此感到满意
@xCasper
但是,如果您通过Microsoft同步了设置,则大多数首选项似乎都会自行恢复.我说的最多,因为我的键绑定似乎没有恢复,而是恢复默认.其他所有内容,例如我选择的主题和颜色选择,我的IDE的布局(例如我有标签),以及似乎没有回来的东西.
joa*_*ego 53
我尝试了David的解决方案(关于单击空符号缓存选项的解决方案),但它对我不起作用.
我是怎么解决的?
对我来说这个错误没有意义,但我解决了这个问题!
Dav*_*vid 36
刚刚遇到同样的问题,似乎VS 2015和TFS存在问题.我将一些文件合并到另一个分支后,我遇到了问题.尝试了几件事,它起作用了:
不确定它为什么会发生,但这对我有用,也可能值得清除zvi提到的TFSTemp文件夹.
编辑
此路径:%TMP%\TFSTemp可以复制粘贴到Windows资源管理器中以访问TFS temp
清理缓存符号(工具>选项>调试>符号> EmptySymbolCache).以管理模式打开您的解决方案.
这解决了我的问题.
小智 6
我已经完成了上述所有操作,但我的问题没有解决(尝试通过 VS 2017 打开项目),
之后我意识到问题是我的 csproj 文件。我的项目(mvc)
是由 VS 2015 创建的...所以我编辑我的 csproj 文件并替换
<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
Run Code Online (Sandbox Code Playgroud)
这样 :
<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.7\build\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.7\build\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
Run Code Online (Sandbox Code Playgroud)
这一切都与 DotNetCompilerPlatform 的版本有关。
(我理解这个问题的方式是,我通过 VS 2017 创建了新的 mvc 项目,并比较了两个 csproj 文件 - 新的文件和 VS 2015 创建的文件 - )
/sf/users/1096721/提供的其他相关信息(因为答案已锁定)
对我来说(VS2019 打开一个旧的解决方案)它只影响解决方案中的一个项目。导入看起来像这样:
<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
Run Code Online (Sandbox Code Playgroud)
工作项目只有
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
Run Code Online (Sandbox Code Playgroud)
行,所以我删除了前 2 个,并且 intelisense / go todefinition 等再次开始工作。
然而,由于缺少 Roslyn csc 编译器,Web 项目现在无法运行。
最后,总体有效的解决方案是更新项目的 Nuget 包Microsoft.CodeDom.Providers.DotNetCompilerPlatform。Microsoft.Net.Compilers
小智 5
上面的答案是正确的,但路径稍微偏离,请尝试这样做:
%AppData%\..\Local\Temp\TFSTemp
Run Code Online (Sandbox Code Playgroud)
更新visual studio后我遇到了同样的问题,所以这是我解决问题的方法。
希望这对遇到此问题的任何人都有帮助。
| 归档时间: |
|
| 查看次数: |
92708 次 |
| 最近记录: |