我在调试单元测试时遇到一个非常奇怪的问题。如果我调试单元测试(ctrl+r ctrl+t),我会得到一个未捕获的异常。如果我只是运行单元测试(ctrl+rt),我不会得到这个异常。
未捕获的异常是NHibernate.ByteCode.ProxyFactoryFactoryNotConfiguredException。
堆栈跟踪:
at NHibernate.Bytecode.AbstractBytecodeProvider.get_ProxyFactoryFactory() in d:\CSharp\NH\NH\nhibernate\src\NHibernate\Bytecode\AbstractBytecodeProvider.cs:line 32
at NHibernate.Validator.Util.NHibernateHelper.IsProxyFactoryConfigurated()
我使用 .Net Reflector 查看定义此方法的程序集(NHibernate.Validator ...它是开源的),下面是“抛出”异常的方法:
public static bool IsProxyFactoryConfigurated()
{
try
{
IProxyFactoryFactory proxyFactoryFactory = Environment.BytecodeProvider.ProxyFactoryFactory;
return true;
}
catch (ProxyFactoryFactoryNotConfiguredException)
{
return false;
}
}
这个异常怎么能不被Try Catch块捕获呢?
听起来你正在看到一个第一次机会例外 http://blogs.msdn.com/b/davidklinems/archive/2005/07/12/438061.aspx.
您是否启用了“第一次机会例外时中断”?您应该能够在“调试”->“异常”菜单中配置它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)