【发布时间】:2014-03-15 00:30:13
【问题描述】:
当我尝试在 Visual Studio 2012 中访问解决方案属性时,我收到错误“对象引用未设置为对象的实例”。可以通过卸载 Nuget 暂时解决此问题,如下所述:Visual Studio - Error when clicking on Solution -> Properties (Object reference not set to an instance of an object)
如果我卸载 NuGet,它会开始正常工作,但一旦我再次添加 NuGet,同样的问题会立即再次出现。 Nuget 更新到新版本没有帮助。我想知道是否有人知道这个问题的可靠解决方案。
我有 VS 的 Ver.2012.3.41009,除了 NuGet 包我有以下安装包:MS ASP.NET Web 工具、VS 2012 颜色主题编辑器、用于 JavaScript 的 Windows 库的 VS 扩展
更新:关于异常的完整信息(不要太多:内部异常为空,堆栈跟踪由单行组成):
发生 System.NullReferenceException
HResult=-2147467261
Message=对象引用未设置为对象的实例。
Source=Microsoft.VisualStudio.CodeAnalysis.Sdk.UI
堆栈跟踪: 在 Microsoft.VisualStudio.CodeAnalysis.SdkUiUtilities.GetService[S,T]
(IServiceProvider 提供者) 内部异常:
更新 2:我刚刚发现此错误取决于解决方案。在某些解决方案上它会持续存在,而在其他解决方案上则不会
【问题讨论】:
-
您能否将调试器附加到 VS,通过 repro 并发布异常的堆栈跟踪?这可能是解决此问题的唯一方法
-
如何将调试器附加到 VS?什么是回购?
-
打开另一个 VS 实例,工具 -> 附加到进程并选择另一个 VS (devenv.exe)。确保在 NullReferenceException 上禁用 Just My Code 并启用中断。然后右键单击另一个VS,它应该会给你问题的堆栈跟踪
-
添加了完整的异常信息,这就是我在调试器下从其他 VS 实例获得的全部信息
-
根据您链接的问题中的第二个答案,您是否检查了 NuGet 包管理器控制台是否有错误?可能是某个特定的包(而不是 NuGet 本身)导致了这个问题。
标签: visual-studio