处理由无法访问的数据库导致的NHibernate延迟加载异常

时间:2012-08-06 07:17:47

标签: c# nhibernate exception-handling

我有一个使用NHibernate映射域和MVVM模式的图形界面的应用程序。当网络关闭时,数据库(非本地)无法访问,因此我应该能够向用户显示消息并关闭应用程序而不会崩溃。我可以在应用程序尝试使用try-catch打开会话时开始执行此操作,但稍后这样做似乎很难。它正在使用延迟加载,因此对数据库的查询在各处都可能发生,并且它不像使用try-catch那么简单。我能做些什么来解决它?

1 个答案:

答案 0 :(得分:1)

要控制NHibernate抛出的异常类型,可以实现NHibernate.Exceptions.ISQLExceptionConverter并将其传递给Configuration对象。 Here是有关此界面的更多信息。