Я пытаюсь установить обязательное: необязательное соотношение 1: 1 между двумя объектами, где оба объекта имеют свойства навигации, ссылающиеся друг на друга.Мне нужен только один внешний ключ для объекта Location
.У Photo
должно быть Location
, но у Location
не должно быть Photo
. Вот обе модели, у меня нет дополнительного Fluent-кода, описывающего отношения.
public class Photo
{
[Column("PhotoID")]
public long ID { get; set; }
[InverseProperty("Photo")]
[Required]
public virtual Location Location { get; set; }
}
public class Location
{
[Column("LocationID")]
public long LocationID { get; set; }
public long? PhotoID { get; set; }
[ForeignKey("ID")]
public virtual Photo Photo{ get; set; }
}
Создаваемый sql-код создает ограничение, указывающее на неверный внешний ключ объекта Photo.
FOREIGN KEY FK_dbo.Photo_dbo.Location_PhotoID No Action No Action Enabled Is_For_Replication PhotoID
REFERENCES Relationships.dbo.Location (LocationID)