使用Entity Framework 4在运行时更改数据库模式的最佳实现是什么?

时间:2010-07-13 20:26:48

标签: asp.net-mvc entity-framework entity-framework-4 multi-tenant

我们正在SQL Server上使用所讨论的“单一数据库,单独模式”模型构建ASP.Net MVC 2多租户应用程序,以及其他地方herehere,其中每个租户有一个或多个用户,并使用自己的特定于租户的SQL Server架构进行拆分。

应用程序正在使用Entity Framework 4.为了让不同租户的用户访问其架构中的数据,我们需要能够在创建实体的ObjectContext时指定架构。

我已经看到了一些对这个工具的引用(http://efmodeladapter.codeplex.com/)但是(1)我希望每次生成EDMX时都不必更新代码,如使用说明中指定的那样,(2)它是在EF4之前制作的,所以我希望现在有一个更简单的方法。

那么,在EF4中执行此操作的最佳方法是什么?

由于

1 个答案:

答案 0 :(得分:1)

好吧,那好吧。对于未来的搜索者,虽然我从this example等嵌入资源加载了ssdl,csdl和msl,但我实现的内容类似于this example

在实现中,我在MVC操作请求中创建存储库对象时,我使用用户上下文来确定需要什么模式,使用前面提到的示例编写模式并创建EntityConnection然后使用它创建我的ObjectContext实体。

它看起来运行得很好,但我有点担心它直觉上看起来可能是性能问题。