2011-04-06 25 views
2

我有一个多租户代码第一个系统的基本SQL模式分区租户的自定义实现。我正在使用ToTable方法在第一次调用时正确映射模式,但正如我已经了解到正在缓存的模型在第二次调用时更改模式,不同的租户不起作用。 EF 4.1中是否有禁用缓存或重建模型的方法?是的,我知道这对于性能并不好。感谢您的帮助..我需要更改表架构而无需重新加载应用程序域(EF模型缓存问题)

回答

0

虽然这是一个老问题,但对于所有面临这个问题的人来说,最终都会找到这个问题来寻找可能的解决方案。在这里...

最初,可以通过在OnModelCreating方法中将ModelBuilder的“CacheForContextType”属性设置为'false'来关闭缓存。该方法在DBContext中被定义为虚拟,并且需要被覆盖。但在EF 4.1中,此属性已被删除,因为创建模型是一个昂贵的过程,而且Microsoft团队想要推广一个更好的模式。 Check this link

0

这似乎是模型构建器上的Build()命令是你在找什么。

modelBuilder.Build().Compile().CreateObjectContext... 
相关问题