我们正在开发一个多租户的 ASP.NET MVC Web 应用程序。每个租户都有自己的数据库。数据访问由实体框架管理。StructureMap 被用作 IoC 容器。实体框架数据上下文已设置为 http 请求范围。对于每个请求,都会计算出租户,并且 StructureMap 返回实体框架数据上下文和存储库类的新实例。
在 Web 应用程序的启动类(IProcessHostPreloadClient 的实现)中,我想初始化实体框架 - 我需要循环并为每个配置的租户创建一个新的数据上下文实例。解决这个问题的最佳方法是什么?StructureMap 将返回相同的数据上下文,因为它已设置为使用 http/thread 范围进行缓存。
谢谢,哈沙