多个实体框架模型和objectcontext

时间:2010-10-22 22:33:28

标签: asp.net entity-framework objectcontext

我有一个使用Entity Framework的asp.net Web应用程序。应用程序数据层使用Jordan Van Gogh概述的方法here.简而言之,此方法使用每个http请求一个共享的objectcontext实例,并使用继承IHttpModule的AspNetObjectContextDisposalModule进行处理。

我添加了另一个项目,一些额外的表,并设置了一个数据层,将我上面描述的示例(确切地)复制到我的应用程序中。这个额外的项目和随后的不同数据模型都完美地工作。我可以使用2个数据层执行不同的操作,看似没有任何后果。当然,对象集在2个数据层中是不同的,因为它们代表不同的表。

我的问题是:

这种做法是个好主意吗?我得到了幕后发生的大部分内容,但这两个模型都使用System.Data.Objects.ObjectContext。如果用户A使用第一数据层执行操作,同时用户B使用第二数据层执行操作,那么“共享”对象上下文是否会出现问题?

感谢。并且要温柔。

修改 注意:我使用不同的oc键

1 个答案:

答案 0 :(得分:1)

你应该没事:

  • 对象上下文是每个http请求,因此来自不同用户的上下文不会相互干扰
  • 每个上下文都会更新不同的表,以便它们不会相互干扰

您可能需要注意的一件事是,两个用户同时更新相同的数据会发生什么。