Ich habe bereits viele Fragen gelesen, konnte aber immer noch keine Lösung für mein Problem finden.EF erforderlich für optionale Beziehung nicht mit den richtigen Spalten für FK
ich so etwas haben bin versucht drawed ich sehr schnell
erster Versuch:
public class CarMap : EntityTypeConfiguration<Car>
{
public CarMap()
{
ToTable("Cars", Constants.Schema);
Property(t => t.EngineId);
HasRequired(x => x.SPropertyPolicyInsurance).WithMany().HasForeignKey(x => x.SPropertyPolicyInsuranceId);
}
}
public class Car : MyBase
{
public int EngineId { get; set; }
public virtual Engine Engine { get; set; }
}
public class EngineMap : EntityTypeConfiguration<Engine>
{
public EngineMap()
{
ToTable("Engines", Constants.Schema);
Property(t => t.MyField1).HasColumnType("nvarchar").HasMaxLength(128).IsRequired();
Property(t => t.MyField2).HasColumnType("nvarchar").HasMaxLength(128).IsRequired();
Property(t => t.MyField3).HasColumnType("bit").IsRequired();
}
}
public class Engine : MyBase
{
public string MyField1 { get; set; }
public string MyField2 { get; set; }
public bool MyField3 { get; set; }
public virtual Car Car { get; set; }
}
diese Lösung eine neue Spalte auf meinem Motor Tabelle erstellt, Ich will nicht ...
Zweiter Versuch:
die CarMap dem folgenden Code ändern:
public class CarMap : EntityTypeConfiguration<Car>
{
public CarMap()
{
ToTable("Cars", Constants.Schema);
Property(t => t.EngineId);
HasRequired(x => x.Engine).WithOptional(p => p.Car);
}
}
Das Problem ist, dass es nicht die Spalte EngineID nicht verwendet meine FK Schlüsselwerte speichern ...
Vielen Dank für Ihre Hilfe sowieso ...