在RequestFilter中访问Db

时间:2015-12-16 18:28:39

标签: servicestack requestfiltering

我正在使用ServiceStack 4并且当前访问服务中的数据库(Db)没有任何问题。但是,在RequestFilterResponseFilter中,我无法访问Db属性。

除了解析过滤器的<IDbConnection>方法中的Execute实例之外,还有其他方法可以访问数据库吗?我尝试从已注册的IDbConnection进行解析,但它不像Service那样无缝,连接已关闭。

我正在努力保持干燥并避免破坏请求链。

感谢您的帮助:)

1 个答案:

答案 0 :(得分:2)

您可以从AppHost IOC中注册的IDbConnection解析IDbConnectionFactory(即您只能解决已注册的依赖关系),例如:

using (var db = HostContext.Resolve<IDbConnectionFactory>().Open()) 
{
    //...
}

这也是基础Serviceresolves its IDbConnection

的基础