Das angegebene Schema ist ungültig. Fehler: Die Beziehung wurde nicht geladen, da der Typ nicht verfügbar ist

Ich möchte auf das verweisenOrderAddress Modell-zweimal in meinemOrder Modell; einmal alsShippingAddress und einmal alsBillingAdress.

Auf der anderen Seite möchte ich meineOrderAddress Modell, um eine Liste von zu habenOrderAddresses.

OrderAddress-Modell
public enum AddressType
{
    Billing,
    Shipping,
    Contact
}
public class OrderAddress : BaseModel
{
    public AddressType AddressType { get; set; }
    public bool IsPrimary { get; set; }

    public string Address { get; set; }
    public string CityStateZip { get; set; }
    public string ContactName { get; set; }
    public string PhoneNumber { get; set; }
    public string FaxNumber { get; set; }
    public string EmailAddress { get; set; }

    public virtual ICollection<Order> Orders { get; set; }

    public virtual ApplicationUser User { get; set; }
}
Modell bestellen
public class Order : BaseModel
{
    public DateTime OrderDate { get; set; }

    public int BillingAddressId { get; set; }
    public virtual OrderAddress BillingAddress { get; set; }

    public int ShippingAddressId { get; set; }
    public virtual OrderAddress ShippingAddress { get; set; }

    public virtual ApplicationUser User { get; set; }

}
Fließende API
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    base.OnModelCreating(modelBuilder);

    modelBuilder.Entity<Order>()
                .HasRequired(m => m.ShippingAddress)
                .WithMany(t => t.Orders)
                .HasForeignKey(m => m.ShippingAddressId)
                .WillCascadeOnDelete(false);

    modelBuilder.Entity<Order>()
                .HasRequired(m => m.BillingAddress)
                .WithMany(t => t.Orders)
                .HasForeignKey(m => m.BillingAddressId)
                .WillCascadeOnDelete(false);
}

Wenn ich versuche, Update-Database auszuführen, wird folgende Fehlermeldung angezeigt:

Das angegebene Schema ist ungültig. Fehler: Die Beziehung "MyApp.Domain.DAL.Order_ShippingAddress" wurde nicht geladen, da der Typ "MyApp.Domain.DAL.OrderAddress" nicht verfügbar ist.

Was mache ich falsch?

Antworten auf die Frage(7)

Ihre Antwort auf die Frage