我有一个多租户ASP.NET Web API,它使用
形式的路由api/{tenant}/{controller}/{id}
每个租户都有一个单独的数据库,依赖注入(Ninject)用于通过解析路由为我的控制器创建数据库连接(实际上是NHibernate ISession)。我正在尝试编写集成测试,问题是当API是自托管时,HttpContext.Current为null,因此我无法访问路由数据并解析租户以获取请求。
在这种情况下,有没有办法在类中访问路径信息?如果我能够在管道中获得更高的路由数据,我怎样才能将它推送到当前请求上下文中的控制器?
我提出的唯一选择是访问控制器中的Request对象,但是在我想要创建数据库连接的构造函数中它是null。