我试图在Visual Studio 2005的“即时窗口”中查看具有300多个属性的对象的属性。仅显示前100个项目,然后显示以下标题:
< More... (The first 100 of 306 items were displayed.) >
我正在尝试查看其余项目,但无法弄清楚。
我意识到可以在“监视”窗口中看到这些内容,但这并不相同。
Answers:
我知道这差不多是几年前的事,但今天我遇到了这个问题。有时在立即窗口中查看列表而不是在监视窗口中查看很有用。您可以使用以下方法轻松查看比前100个结果更多的结果:
yourList.Skip(100).ToArray()
确实不需要花费很多时间就可以编写出很好的作品-对我很有用。
更新:正如下面的注释中指出的那样,此答案实际上是错误的,仅适用于集合,而不适用于具有很多属性的对象。我将其保留在这里,因为很多人似乎都觉得它有用。
立即窗口被设计为快速查看工具。如果要查看更多详细信息,则必须在“监视窗口”或“快速监视窗口”中查看。
另一个选择是编写一个Visual Studio加载项,其操作与“立即窗口”相似,但具有更多选项。
像这样调试时,我总是创建一个扩展方法以将对象导出到xml。对对象数据进行故障排除非常有用。这是我用的:
public static void SerializeToXML(this object entity)
{
System.Xml.Serialization.XmlSerializer writer = new System.Xml.Serialization.XmlSerializer(entity.GetType());
System.IO.StreamWriter file = new System.IO.StreamWriter(string.Format(@"{0}\{1}.xml", Directory.GetCurrentDirectory(), entity.GetType().Name));
writer.Serialize(file, entity);
file.Close();
}
它不是100%完整的证明,但在大多数情况下是完美的。它将在应用程序目录中创建一个xml文件,并将对象名称作为文件名。在立即窗口中,您只需键入对象名称,然后输入.SerializeToXML()。
所以:myList.SerializeToXML()