14
DbContextとSetInitializerを使用してdatetime2の範囲外変換エラーを修正する方法
Entity Framework 4.1で導入されたDbContextおよびCode First APIを使用しています。 データモデルは、などの基本データ型を使用しています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ファイルがないため、修正方法もわかりません。 何か案は?