私はこれが古い投稿であることを認識していますが、質問に対する回答は決して痛いものではないと思います。
私は、NHibernateに接続文字列をテストするように明示的に指示する方法はないと思います。ただし、SessionFactoryをインスタンス化すると、データベースに接続しようとします。 Try/CatchでSessionFactoryの作成をラップし、そのようにエラーを処理することができます。
私はFluent NHibernateを使用していますが、次の例でも状況を説明できると確信しています。
Dim sf as SessionFactory
Try
sf = CreateSessionFactory()
Catch ex as FluentNHibernate.Cfg.FluentConfigurationException
Messagebox.Show(ex.InnerException.Message)
End Try
ex.InnerException.Message
には実際のエラーが含まれています。
- 接続文字列が無効です
- サーバーが見つかりませんでした
- ユーザー/パスを認証できませんでした