2016-09-19 1 views
0

Ich habe zwei DbContext-Klasse und einige Entitäten in ihnen. Ich weiß, dass es keine gute Idee ist, mehr als einen DbContext zu haben, aber ich muss eine Menge arbeiten, um meinen Code zu ändern! Meine Frage ist, was ist das beste Szenario für eine Beziehung zwischen zwei Entitäten mit unterschiedlichem DbContext?So fügen Sie eine Beziehung zwischen Tabellen in zwei verschiedenen DbContext hinzu

Zum Beispiel ein one to many Beziehung zwischen User-Entity mit IdentityDb Kontext und Kommentar Entity mit SiteDbContext:

public class User : IdentityUser 
{ 
    public DateTime JoinDate { get; set; } 
    public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager) 
    { 
     var userIdentity = await manager.CreateIdentityAsync(this,DefaultAuthenticationTypes.ApplicationCookie); 
     return userIdentity; 
    } 
} 

public class IdentityDb : IdentityDbContext<ApplicationUser> 
{ 
    public IdentityDb() : base("DefaultConnection", throwIfV1Schema: false) 
    { 
    } 
    public static IdentityDb Create() 
    { 
     return new IdentityDb(); 
    } 
} 

public class Comment 
{ 
    public int CommentId { get; set; } 

    [Required] 
    [StringLength(900)] 
    public string CommentText { get; set; } 

    [DataType(DataType.Date)] 
    public DateTime CommentDate { get; set; } 
} 

public class SiteDb: DbContext 
{ 
    public SiteDb(): base("DefaultConnection") 
    { 
    } 
    public DbSet<Comment> Comments{ get; set; } 
} 

+0

Mögliches Duplikat von [Mehrere Kontexte mit Entity Framework 6, Referenzobjekte über dbcontexts] (http://stackoverflow.com/questions/22534560/multiple-contexts-with-entity-framework-6-reference-entities-across- dbcontexte) –

Antwort

0

Kurze Antwort: Entity Framework unterstützt derzeit nicht das Erstellen einer Abfrage, die mehr als einen Kontext verwendet.

Für die Arbeit: Siehe this.

Verwandte Themen