我对依赖注入仍然很陌生,似乎我错过了一些东西。
我使用 Autofac 作为我的容器来解析每个存储库对 NHibernate 会话的依赖。
会话接收 SystemSetting 的依赖项,它几乎只包含 MySql 连接字符串。
在应用程序开始时,我配置了所有注册的依赖项,包括 SessionFactory 的初始化。
情况是,如果连接字符串错误,应用程序会抛出一个编译时异常,它无法使用提供的连接字符串连接到 MySql。如果我想允许这种错误配置,这样用户就可以自己设置正确的,比如说,IP 地址?
我的问题是,我无法将应用程序获取到登录表单,因为登录表单将用户存储库作为依赖项接收,而用户存储库又接收了一个据称是活动的会话,因此引发了异常。
我应该从 Autofac 配置中排除 NHibernate 会话的创建吗?