我正在构建一个 Nancy Web 应用程序,并使用 OrmLite 进行数据库访问。我注意到每个请求都会打开一个新的数据库连接并且不会关闭它。我认为在 Application 容器中注册 OrmLiteConnection 类会使其成为应用程序范围,但看起来我错过了一些东西。
这是我的代码(在ConfigureApplicationContainer
):
container.Register<OrmLiteConnectionFactory>(new OrmLiteConnectionFactory(connectionString, SqlServerDialect.Provider));
container.Register<OrmLiteConnection>(
(cContainer, overloads) => (OrmLiteConnection) cContainer.Resolve<OrmLiteConnectionFactory>().Open());