Мне нужно было 1:1
отображение DivisionParticipant
и Team
с обоими идентификаторами с автоматическим приращением.Я сделал это, потому что мы хотели использовать Nullable FK, Team
и Player
.Раньше Team ID
было от PK до DivisionParticipant ID
, но теперь DivisionParticipant ID
- это автоинкремент, и теперь Team
добавляется как свойство с FK, чтобы получить 1: 1.Это работает нормально, и при чтении понадобились минимальные изменения кода, но теперь при сохранении мы получаем эту ошибку ниже.Идентификатор DivisionParticipant
был сделан для автоинкремента, поэтому я не уверен, о каком столбце идет речь?
Невозможно вставить явное значение для столбца идентификаторов в таблице «DivisionParticipant», когда для IDENTITY_INSERT установлено значение OFF
Классы
public class DivisionParticipant
{
public int Id {get; set;}
public virtual Team Team { get; set; }
public virtual Player Player { get; set; }
}
public class Team
{
public int Id {get; set;}
public virtual DivisionParticipant DivisionParticipant { get; set; }
}
DataContext
modelBuilder.Entity<Team>()
.HasOptional(t => t.DivisionParticipant)
.WithRequired(t => t.Team);