EF 7 (Beta 7) Relazione One-to-One

c# entity-framework entity-framework-core

Domanda

Ho notato domande che hanno risposto a questo problema per versioni beta precedenti di EF 7 (come qui ), ma non l'ho visto risolto per Beta 7, quindi eccolo qui:

Ho 2 entità, semplificate come segue:

public class FirstEntity
{
    public int FirstEntityID { get; set; }
    /*
        Other fields here
    */
    public int? SecondEntityID { get; set; }
    public SecondEntity SecondEntityProperty { get; set; }
}

public class SecondEntity
{
    public int FirstEntityID { get; set; } 
    /*
        Other fields here
    */
    public FirstEntity FirstEntityProperty { get; set; }
}

Il modo di mappare tutto è cambiato molto dalle versioni precedenti. Come mappare queste due entità in una relazione One-to-One?

Risposta popolare

È stato modificato per EF7 rc1-final.

modelBuilder.Entity<FirstEntity>()
            .HasOne(q => q.SecondEntity)
            .WithMany()
            .HasForeignKey(q => q.SecondEntityID);

upd:

modelBuilder.Entity<FirstEntity>()
            .HasOne(q => q.SecondEntity)
            .WithOne(v => v.FirstEntity)
            .HasForeignKey<FirstEntity>(q => q.SecondEntityID);


Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché