我试图在Visual Studio 2005的立即窗口中查看具有超过300个属性的对象的属性.仅显示前100个项目,然后显示此标题:
< More... (The first 100 of 306 items were displayed.) >
Run Code Online (Sandbox Code Playgroud)
我试图看到其余的项目,但无法搞清楚.
我意识到我可以在Watch窗口中看到这些,但那不一样.
有两种方法可以增加调试信息的有用性,而不是{MyNamespace.MyProject.MyClass}在调试器中查看.
这些是使用[DebuggerDisplayAttribute][1]和ToString()方法.
using System.Diagnostics;
...
[DebuggerDisplay("Name = {Name}")]
public class Person
{
public string Name;
}
Run Code Online (Sandbox Code Playgroud)
要么
public class Person
{
public string Name;
public override string ToString()
{
return string.Format("Name = {0}", Name);
}
}
Run Code Online (Sandbox Code Playgroud)
有没有理由更喜欢一个到另一个?有什么理由不这两个都做?这纯粹是个人偏好吗?
我需要在ipad上调试HTML应用程序.我曾经能够通过USB线将ipad连接到我的Mac,它将显示在Safari的"开发"菜单中.我现在有两个ipad - 一个使用iOS 6,另一个使用iOS 7. iOS 6正确显示,我可以从我的mac访问Web检查器.iOS 7 ipad未显示在"开发"菜单中.
我在Maverick上安装了最新版本的iOS(版本7.1)和最新版本的Safari(7.0.2).
欢迎任何建议.
对于我的调试需求,pdb非常好.然而,这将是很大冷却器(和有益的),如果我能进入ipython.这件事有可能吗?
有谁知道调试服务器端代码的好方法?我尝试启用Node.js调试然后使用node-inspector但它没有显示我的任何代码.
我最终使用console.log,但效率非常低.
更新:我发现以下过程适用于我的Linux机器:
当你运行Meteor时,它会产生两个进程
process1:/ usr/lib/meteor/bin/node /usr/lib/meteor/app/meteor/meteor.js
process2:/ usr/lib/meteor/bin/node /home/paul/codes/bbtest_code/bbtest02/.meteor/local/build/main.js --keepalive
你需要在process2上发送kill -s USR1
运行node-inspector,您可以看到您的服务器代码
在我第一次尝试时,我修改/ usr/lib/meteor/bin/meteor中meteor启动脚本的最后一行
exec "$DEV_BUNDLE/bin/node" $NODE_DEBUG "$METEOR" "$@"
Run Code Online (Sandbox Code Playgroud)
并NODE_DEBUG=--debug meteor在命令提示符下运行.这只在process1上放了--debug标志,所以我只在node-inspector上看到meteor文件,但找不到我的代码.
有人可以在Windows和Mac机器上检查这个吗?
一位朋友上周问我如何枚举或列出程序/函数/等中的所有变量.出于调试的目的(基本上获取所有内容的快照,以便您可以查看设置了哪些变量,或者是否设置了它们).我环顾四周,找到了一个比较好的Python方法:
#!/usr/bin/python
foo1 = "Hello world"
foo2 = "bar"
foo3 = {"1":"a",
"2":"b"}
foo4 = "1+1"
for name in dir():
myvalue = eval(name)
print name, "is", type(name), "and is equal to ", myvalue
这将输出如下内容:
__builtins__ is <type 'str'> and is equal to <module '__builtin__' (built-in)> __doc__ is <type 'str'> and is equal to None __file__ is <type 'str'> and is equal to ./foo.py __name__ is <type 'str'> and is equal to __main__ foo1 is <type 'str'> and is equal to …
我刚刚开始使用ADO.NET和DataSet和DataTables.我遇到的一个问题是,在尝试调试时,似乎很难分辨数据表中的值.
有哪些最简单的方法可以快速查看DataTable中保存的值?有没有在调试时看到Visual Studio中的内容,或者是将数据写入文件的唯一选项?
我创建了一个小实用程序函数,它将DataTable写入CSV文件.然而,生成的CSV文件被切断了.应该是写出System.Guid中间最后一行的大约3行,文件就停止了.我无法判断这是我的CSV转换方法或DataTable的原始填充的问题.
更新
忘掉最后一部分,我忘了冲洗我的流作家.
是否有模板标签(或任何其他技巧)我可以用来显示页面中可用的所有变量?
在Eclipse中使用断点时,我有时会注意到它们有不同的图标/注释(左侧边栏上的标记).有时它只是一个蓝色的球,有时候它上面有一个勾号,有时它会被划掉.所有这些注释意味着什么?
我正在使用NetBeans和谷歌浏览器进行C hrome调试教程.包括扩展在内的所有内容似乎都能正常工作,但是当我进入section时Use the Debugger,我看不到html代码插入断点.
在浏览器上选择了inspect popup后,它会在Console中打开,什么都不显示,Elements会显示popup.html并添加了图像.当我转到Sources时,可以打开文件popup.html,但唯一的第1行是空白.如果我打开js文件,js文件就在那里并且可以编辑(断开指向).
对不起 - 可能是基本的东西,但我对此并不是很有经验.我已经尝试重新加载并刷新一切.
后续行动:通过进入location.reload(true)控制台提示符,popup.html文件变为Source!为什么?不知道.
我希望这可以节省一些人在我磕磕绊绊的一整天.