DBにいくつかの定数をシードしようとしています:
context.Stages.AddOrUpdate(s => s.Name,
new Stage()
{
Name = "Seven",
Span = new TimeSpan(2, 0, 0),
StageId = 7
});
context.Stages.AddOrUpdate(s => s.Name,
new Stage()
{
Name = "Eight",
Span = new TimeSpan(1, 0, 0, 0),
StageId = 8
});
これは、EF Codefirst Migrations の Seed() 関数内にあります。ステージ 8 で次のように失敗します。
System.Data.UpdateException: エントリの更新中にエラーが発生しました。詳細については、内部例外を参照してください。---> System.OverflowException: SqlDbType.Time オーバーフロー。値 '1.00:00:00' は範囲外です。00:00:00.0000000 から 23:59:59.9999999 の間である必要があります。
EF を使用してタイムスパンを保存できないのはなぜですか? ここで、両端でばかげた時間からティックへの変換を行う必要がないことを本当に願っています...