Wie soll ich das Mapping mit flüssiger API erstellen, wenn die Datenbankarchitektur so etwas ist?EF Code Erste 1 zu 1 Zuordnung mit Fluent API
public class Users
{
public Users()
{
PermanentAddresses = new PermanentAddresses();
TemporaryAddresses = new TemporaryAddresses();
}
public int Id { get; set; }
public string LastName { get; set; }
public string FirstName { get; set; }
public virtual PermanentAddresses PermanentAddresses { get; set; }
public virtual TemporaryAddresses TemporaryAddresses { get; set; }
}
public class PermanentAddresses
{
// Primary Key and Foreign Key from Users class
public string Id { get; set; }
// Primary Key and Foreign Key from Addresses class
public int AddressId { get; set; }
public virtual Users Users { get; set; }
public virtual Addresses Addresses { get; set; }
}
public class TemporaryAddresses
{
// Primary Key and Foreign Key from Users class
public string Id { get; set; }
// Primary Key and Foreign Key from Addresses class
public int AddressId { get; set; }
public virtual Users Users { get; set; }
public virtual Addresses Addresses { get; set; }
}
public class Addresses
{
public Addresses()
{
PermanentAddresses = new PermanentAddresses();
TemporaryAddresses = new TemporaryAddresses();
Company = new Company();
}
public int Id { get; set; }
public string CompleteAddress { get; set; }
public virtual PermanentAddresses PermanentAddresses { get; set; }
public virtual TemporaryAddresses TemporaryAddresses { get; set; }
public virtual Company Company { get; set; }
}
ich diese Störung erhalte.
Das Hauptende einer Zuordnung zwischen den Typen 'PermanentAddresses' und 'Addresses' konnte nicht ermittelt werden. Das prinzipielle Ende dieser Zuordnung muss explizit konfiguriert werden, indem entweder die fließende Beziehung API oder Datenanmerkungen verwendet werden.
Ich denke, dass Ihr Problem möglicherweise damit zusammenhängen, dass Ihre Fremdschlüssel nicht ausgerichtet werden. Sie könnten die Technik hier ausprobieren: modelBuilder.Entity(). HasRequired (pa => pa.Users) .WithMany(). HasForeignKey (pa => pa.Id); Siehe http://weblogs.asp.net/manavi/associations-in-ef-4-1-code-first-part-5-one-to-one-foreign-key-associations –