Я сталкиваюсь с очень странной проблемой при отладке юнит-теста. Если я отлаживаю модульный тест (ctrl + r ctrl + t), я получаю неперехваченное исключение. Если я просто запускаю модульный тест (ctrl + r t), я не получаю это исключение.
Неперехваченным исключением является 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?