根据请求Breeze EFContextProvider并基于参数?

时间:2014-04-09 16:27:14

标签: entity-framework breeze entity-framework-6

我有一个多租户应用,用户可以选择"当前公司"他们登录后 每个公司都有一个数据库,但模型相同,工作流程相同,控制器操作相同......用户可以在登录时切换公司,所有操作都需要定向&# 39;适当的DB。

I know it is possible通过覆盖EFContextProvider<T>来自定义CreateContext()中的上下文创建,但是如何传递允许我使用正确的连接字符串创建上下文的额外信息(参数,例如CompanyId) ?

这可能吗?

1 个答案:

答案 0 :(得分:1)

我发现最简单的方法是在自定义HTTP标头中包含租户ID。

由于租户ID在会话期间发生了变化,因此您可能希望创建一个custom Breeze ajax adapter(包装您现在正在使用的那个),在ajax的实施过程中动态设置此标头方法

在服务器上,您可以从请求中删除标题。

请确认您在服务器上验证用户和标题