小编Pau*_*ius的帖子

在Visual Studio中调试时迭代可枚举对象

在Visual Studio中进行调试时,是否可以迭代集合并仅列出过滤的对象信息?我会使用立即窗口,虽然它允许在对象上执行方法,但似乎不允许执行自定义循环语句.

ASP.NET中最简单的例子:

this.Page.Validate();
if (!this.Page.IsValid())
{
  // breakpoint here
}
Run Code Online (Sandbox Code Playgroud)

我们如何迭代Page.Validators收集并找到那些无效的+在该断点处输出它们的信息?(这不是主要问题,只是一个样本)

如果不能直接做到这一点,你有解决办法吗?不涉及代码修改的解决方法,只需在立即窗口或某些Watch表达式中编写代码.

谷歌搜索我发现这里只引用一个解决方法(虽然找不到原文):

"在你的代码中添加一个调试方法,它可以像迭代集合中的所有对象一样.然后你可以在调试模式下从即时窗口调用该方法,它会为你枚举各种各样的东西.把它想象成一个命令-line-debugger-helper.您可以根据需要编写尽可能多的内容."

但它仍然是一种解决方法.我认为它应该是可行的,没有太多的黑客攻击,更重要的是没有修改代码.当然,应该可以在一个语句中进行某种集合转换.

让我们坚持非泛型集合.立即窗口似乎不接受lambda表达式(尝试时出错:"表达式不能包含lambda表达式")

debugging visual-studio

7
推荐指数
1
解决办法
5721
查看次数

每小时 log4net RollingFileAppender

是否可以将 log4net 配置为每小时滚动文件?如果没有 - 有关如何使用所需功能覆盖 RollingFileAppender 来制作 HourlyRollingFileAppender 的任何提示吗?

configuration log4net

5
推荐指数
1
解决办法
3531
查看次数

标签 统计

configuration ×1

debugging ×1

log4net ×1

visual-studio ×1