原始问题
(For再现指令见更新II)
我最近在一次调试会话中摆弄了Visual Studio 2019。我将类“SqlCommand”的一些属性固定为“Favorites”。从那一刻起,我收到一个错误消息“内部错误检索本地值”在“本地”。
在值列的右边有一个“刷新”按钮,当我点击它时,我得到消息“表达式计算器中的内部错误”
现在我无法取消固定该特定属性,因为类树无法再打开。
这种行为并不局限于特定的解决方案,我创建了一个新的演示解决方案,其中我有完全相同的问题。
你可以在下面的屏幕截图中看到它:
主要目标是以某种方式**清除类的哪个属性固定在“局部变量”窗口中的信息。
我已经尝试了几种方法来消除这个错误。
- 看起来VS以某种方式存储了关于哪些属性被标记的信息,所以我试图删除AppData中的“ComponentModelCache”。
- 我重置了设置。
- 我使用安装程序中的修复工具。
- 我删除了 *.suo文件,然后删除了整个.vs文件夹。
- 我在/safemode中启动devenv时看到了同样的问题。
- devenv /resetuserdata也没有帮助
- 我检查了活动记录,但没有任何线索。
- 我将项目的目标框架从4.7.2更改为3.5
我使用Windows Server 2019 Standard,.Net Framework 4.7.2,Visual Studio 2019 16.7.6
我在演示应用程序中使用以下代码:
private static int Main(string[] args)
{
SqlConnection conn = new SqlConnection();
SqlCommand cmd = new SqlCommand();
return 0;
}
更新I
这就是我所说的固定功能。我在SqlConnection对象的WorkstationId属性的示例中展示了它(因为它在SqlCommand上不再起作用)。我相信我在命令文本和参数属性上使用了它。可固定属性是16.4引入的一个相对较新的特性
更新二:复制指令
1.重新安装Visual Studio 2019
1.创建新的控制台项目
1.使用我在上面原题中贴出的代码
1.创建Command对象后设置断点
1.调试项目[F5]
1.打开“本地人”窗口。
1.展开cmd变量并滚动直到找到“Parameters”属性
1.固定参数属性(如更新I中所述)
1.停止调试
1.再次启动调试器
1.打开“本地人”窗口。
1.您将看到错误“检索本地值时出现内部错误”
1.点击“刷新”图标(它是值列右侧的圆形箭头)
1.您将看到错误“表达式计算器中的内部错误”,如原始问题中所述。
UPDATE III(更多实验没有帮助)
- 我使用了VS安装程序中的“修复安装”。
- 我卸载并重新安装了VS。
- 我完全删除了整个%USER%/AppData/.../VisualStudio文件夹
2条答案
按热度按时间ej83mcc01#
文件夹中有一个名为
ObjectFavorites.json
的文件:其内容如下:
删除行
"Parameters"
。你甚至不需要停止或重新启动VS,你可以在运行中编辑这个文件。删除该行后再次启动调试器,错误将消失。
wvt8vs2t2#
在我这边,我没有遇到同样的问题。
也许你可以尝试以下建议:
1)右键单击您的项目属性-〉Build-〉Advanced-〉--将Debug Info更改为
Full
。**2)**勾选【工具】--〉【选项】--〉【调试】--〉【常规】下的【使用托管兼容模式】选项
**3)**输入
C:\Users\xxx(current user)\AppData\Local\Microsoft\VisualStudio\16.0_xxx\Settings
打开每个文件,然后搜索:
<PropertyValue name="UseVBCSLegacyExpressionEvaluator">0</PropertyValue>
然后,将
0
的值改为1
。保存更改,重新启动VS再次测试。而且你应该以管理员的身份运行它。