Entity framework 4.1 实体框架代码优先-将另一个数据库中的实体映射到模型中

Entity framework 4.1 实体框架代码优先-将另一个数据库中的实体映射到模型中,entity-framework-4.1,mapping,ef-code-first,Entity Framework 4.1,Mapping,Ef Code First,我的任务是创建一个现有站点的子应用程序。子应用程序需要使用父站点中的用户,但这在不同的数据库下 我首先为新站点使用实体框架代码。但是,我希望在父数据库用户表和新的代码优先数据库之间创建一个映射 这可能吗 ParantDB.dbo.User SubDB.dbo.Order SubDB.dbo.OrderItems public class Order { public int OrderId { get; set; } public User Customer { get; set;

我的任务是创建一个现有站点的子应用程序。子应用程序需要使用父站点中的用户,但这在不同的数据库下

我首先为新站点使用实体框架代码。但是,我希望在父数据库用户表和新的代码优先数据库之间创建一个映射

这可能吗

  • ParantDB.dbo.User
  • SubDB.dbo.Order
  • SubDB.dbo.OrderItems

    public class Order
    {
       public int OrderId { get; set; }
       public User Customer { get; set; } // Maintains a relationship user table  
    }
    
    public class User
    {
       public int UserId { get; set; }
       ....
    }
    
    公共类subsetContext:DbContext {

    公共数据库集命令{get;set;}
    公共数据库集用户{get;set;}
    模型创建时受保护的覆盖无效(DbModelBuilder modelBuilder)
    {
    //我想我需要在这里做映射??
    }
    }
    

上下文只能绑定到单个连接字符串=单个数据库。例如,此cab的解决方法是在
SubDB
中创建数据库视图,这将在内部隐藏对
ParentDB.dbo.Users的查询,并以与映射表相同的方式映射此视图

     public DbSet<Order> Orders { get; set; }
     public DbSet<User> Users { get; set; }

     protected override void OnModelCreating(DbModelBuilder modelBuilder)
     {
          //???? I Presume I need to do the mapping here??
     }
}