我正在多租户 ASP.NET MVC 应用程序中实现 StructureMap,以注入基于接口检索数据的租户存储库的实例。ITenantContext
有Tenant
问题的是从RouteData
基本控制器的 OnActionExecuting
.
如何告诉 StructureMap 构建TenantContext(tenantID);
从我的RouteData
或某些基本控制器属性派生的tenantID 的位置?
基本控制器
给定以下路线:
{tenant}/{controller}/{action}/{id}
Tenant
我的基本控制器根据 {tenant} URL 参数检索并存储正确的。使用,可以构造Tenant
带有 的存储库,以仅检索与该租户相关的数据。ITenantContext
基于其他 DI 问题,可能AbstractFactory
是一个解决方案吗?