Я использую API-интерфейсы DbContext и Code First, представленные в Entity Framework 4.1.
Модель данных использует основные типы данных, такие как string
и DateTime
. В некоторых случаях я использую единственную аннотацию данных [Required]
, но это не относится ни к одному из DateTime
свойств. Пример:
public virtual DateTime Start { get; set; }
DbContext подкласс также прост и выглядит следующим образом :
public class EventsContext : DbContext
{
public DbSet<Event> Events { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Event>().ToTable("Events");
}
}
В инициализаторе устанавливает даты в модели до разумных значений в любом в этом году или в следующем году.
Однако, когда я запускаю инициализатор, я получаю эту ошибку в context.SaveChanges()
:
Преобразование типа данных datetime2 в тип данных datetime привело к значению вне допустимого диапазона. Заявление было прекращено.
Я вообще не понимаю, почему это происходит, потому что все так просто. Я также не уверен, как это исправить, так как нет файла edmx для редактирования.
Любые идеи?