有人对调试 C# 对象初始化程序块中的异常有任何提示吗?对象初始值设定项语法基本上是全有或全无,这使得在 LINQ 查询内部进行故障排除特别困难。除了将对象创建分解为一个单独的方法之外,我能做些什么来查看哪个属性设置器抛出异常吗?
问问题
2098 次
3 回答
14
禁用跳过属性设置器的选项 [跳过属性和运算符(仅限托管)] 可以让您进入属性设置器。
否则,最好的选择通常是将其分解并在 LINQ 语句之外对其进行调试。您可以将初始化参数包装成 linq 中的匿名类型,并在 linq 语句之外构造对象以进行调试。
于 2009-05-18T15:54:18.120 回答
4
您是否将 VS 设置为在引发异常时中断?(默认情况下仅在未处理的异常上中断)。调试 | 例外,并检查“抛出”。
仅此一项可能无法回答您的问题,但它可能有助于调试。
除此之外,您可以暂时将代码从初始化程序块中分离出来(仅用于调试),然后如果您愿意,您可以在代码工作后恢复初始化程序块。
于 2009-05-18T16:21:25.677 回答
1
将其从您单独设置每个属性的对象初始化程序块中分离出来。这样你就可以真正进入代码。
于 2009-05-18T15:54:37.153 回答