Visual Studio中的托管调试器(我使用的是11.0)显示包含双引号和反斜杠的字符串值,如下所示:
"{\"Text\":\"C:\\\\Temp\"}"
偶尔我想以简单的形式显示像上面那样的转义文本:
{"Text":"C:\\Temp"}
我知道可以通过值旁边的放大镜访问的文本可视化工具,但在调试某些文本操作例程时这很麻烦。
有没有办法在调试器中更改字符串值的显示?
答案 0 :(得分:16)
我看到两个选项可能不那么麻烦,然后每次点击放大镜,具体取决于具体情况:
右键点击该值并点击“添加到观看”,然后编辑添加到观看的表达式,并在结尾处添加,nq
(“无引号”format specifier)。例如,“myJsonObject.JsonText,nq”。从那时起,查看Watch窗口(而不是数据提示),以便在单步执行代码时查看值。
使用OzCode,右键单击表达式并选择Add Custom Expressions,然后在末尾添加,nq
的自定义表达式。例如:[obj].JsonText,nq
。
完全披露: OzCode是我合作的商业VS扩展程序,目前在测试阶段免费。
答案 1 :(得分:6)
我刚刚在调试器窗口中找到了另一种方法。
而不是
?myStringVariable
使用
System.Diagnostics.Debug.print(myStringVariable, {"nq"})
这似乎阻止了双引号。
编辑:更简单的方法:
?myStringVariable,nq
这在Visual Studio 2015中为我工作