Ввод ключей вручную с Entity Framework
Я пытаюсь сначала использовать код Entity Framework для простого проекта базы данных, и я сталкиваюсь с проблемой, которую просто не могу понять.
Я заметил, что EF устанавливал идентификатор для моих таблиц, автоматически увеличивая его на 1 каждый раз, полностью игнорируя значение, которое я ввел вручную для этого поля. После некоторых поисков я понимаю, что правильно отключить это поведение:
modelBuilder.Entity().Property(e => e.EventID).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);
Однако теперь яЯ просто получаю эту ошибку, и я понятия не имею, почему:
Необработанное исключение: System.Data.Entity.Infrastructure.DbUpdateException: при обновлении записей произошла ошибка. Смотрите внутреннее исключение для деталей. ---
System.Data.UpdateException: произошла ошибка при обновлении записей. Смотрите внутреннее исключение для деталей. ---> System.Data.SqlClient.SqlException: невозможно вставить явное значение для столбца идентификаторов в таблице 'События' когда IDENTITY_INSERT установлен на OFF.
Если оно'Это полезно, вот рассматриваемый класс POCO:
public class Event
{
[Key, Required]
public int EventID { get; set; }
public string EventType { get; set; } //TODO: Event Type Table later on
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
public virtual ICollection Matches { get; set; }
public virtual ICollection EventParticipation { get; set; }
}
Заранее спасибо.