我在代码优先解决方案中使用了DbContext
的两个扩展实例。一个只是只读,因为它映射到一组现有的表用于人口统计目的。另一个上下文映射到本地工作表集。
我创建了一个视图并将其映射到自己的实体,该实体作为POCO模型中的导航属性包含在内,表示映射到其他上下文的实体。所以我的问题是:我可以使用Include
跨上下文获取相关实体吗?到目前为止,这并没有出现,因为它抱怨它正在寻找错误模式下的视图 - 用于其他上下文的模式 - 即使视图显然在其映射中定义了正确的模式。
我正在使用带有MVC 4的EF 6。
答案 0 :(得分:1)
每个上下文都以完全隔离的方式运行,您无法将对象从一个上下文共享到另一个上下文。即使您在notracking模式下从数据库中提取对象,通过将这些对象分配给导航属性,将这些对象与其他上下文相关联的那一刻,您实际上会将它们拉到您不想要的其他上下文中。
如果您有某种类型的只读上下文,那么您可以做的只是在读/写上下文中填写外键ID。