我将NHibernate和Enterprise Library用于我的项目。我做了一些调用,比如new UnityContainerConfigurator(_container)
,_container.RegisterInstance(instance)
和var configuration = new NHibernate.Cfg.Configuration()
,导致VS在抛出内部异常时停止(前两次抛出SynchronizationLockException,最后一次抛出--BindingFailure)。
如果我按F5,它会跳过此异常并继续运行,所以我认为这些已在库内部发生并被处理。但我不知道为什么VS一直在告诉我这些。
我已启用“启用我的代码”选项。据我所知,如果启用此选项,这些异常不应该中断执行,因为它们是我使用的库的内部,但实际上并非如此。
在Exception窗口(Ctrl + Alt + E)我将所有异常标记为“Thrown”。但这实际上就是我需要的 - 我希望在我的代码中发生任何异常,但不是来自库的代码。我不想取消设置这个配置或过滤困扰我的例外并检查它们。
任何想法如何实现预期的行为?
答案 0 :(得分:1)
从顶部菜单中选择Debug菜单项;然后选择例外。确保选中Common Language Runtime Exceptions。
有关SynchronizationLockException
和Unity容器的详细信息,请参阅this so question。