我正在使用IEnumerable,在调试器中我希望看到它有的项目,但我不能,因为没有任何属性也没有项目。
是否可以看到具有IEnumerable的项目?
答案 0 :(得分:4)
通过执行此操作指示您执行的操作:
即。单击突出显示区域左侧的圆形箭头。
答案 1 :(得分:4)
使用“本地”窗口并展开结果视图。
答案 2 :(得分:1)
在Visual Studio 2013 Community Edition
中,调试器根据有效数据类型显示结果集:
如果将鼠标悬停在接口类型变量或原始集合变量上,则没有任何区别。
答案 3 :(得分:1)
有几十种可能性。 你可以尝试
.ToList();
// and access single elements through the index
.ToList()[0];
//you can use type those commands in the table at
//"observe local"
答案 4 :(得分:1)
作为展开结果视图的替代方法,您可以在观察窗口中使用“结果”format specifier。
例如,如果可枚举变量名为“myIEnumerable”,则在监视窗口的名称列中键入“myIEnumerable,results”。
结果说明符相对于扩展结果视图的一个小好处是它避免显示各种枚举器属性,从而为结果保留屏幕空间。
答案 5 :(得分:0)
在调试时,设置一个断点,然后在VS中转到:
Debug -> Windows -> Immediate
然后在立即窗口中输入以下命令:
yourEnumerable.ToList()
yourEnumerable.Count() // see how many elements are in
yourEnumerable.ToList()[0] // access by index
yourEnumerable.ToArray()[0] // also access by index