エンティティフレームワーク5.0プロジェクトでは、SQL Server 2008でコードを初めに移行していますが、データベースにはすべてdatetime
列で作成された日付プロパティがあります。Enitity Framework/SQL Server 2008プロジェクトでdatetime2に切り替える方法
データベース内のすべてのdatetime
列を更新する追加移行を使用して移行を作成することはできますか?どこにでもdatetime2
に切り替える他の簡単な方法はありますか?
エンティティフレームワーク5.0プロジェクトでは、SQL Server 2008でコードを初めに移行していますが、データベースにはすべてdatetime
列で作成された日付プロパティがあります。Enitity Framework/SQL Server 2008プロジェクトでdatetime2に切り替える方法
データベース内のすべてのdatetime
列を更新する追加移行を使用して移行を作成することはできますか?どこにでもdatetime2
に切り替える他の簡単な方法はありますか?
流動性のあるAPIを使用して、DB内にdatetime2
列を強制的に作成することができます。
私はこれが見つかりました:あなたがアイデアを得ることができるはず
Using DateTime properties in Code-First Entity Framework and SQL Server
を。
既存のDBに固執する必要がある場合は、カスタムT-SQLコードを実行する移行を作成する必要があります。例はここにあります:
これは古い記事ですが、DATETIME2にすべての日時列を切り替えたい場合は、あなたがEFを作り、他の言葉で(追加した新しい列に対してDATETIME2使用します)デフォルトではDATETIME2使用し、あなたの状況にOnModelCreatingメソッドにこれを追加することができます。
modelBuilder.Properties<DateTime>().Configure(c => c.HasColumnType("datetime2"));
は、すべてのDateTimeと日時を取得すること?モデル内のすべてのエンティティのプロパティ
すばらしい解決策! – arche89
IIRCこれはEF6のみです。 –
はい、これはEF6のみですが、EF5(EF5を使用している場合は6にアップグレードしてください)でも動作する可能性があります。EF7/EFコアはEF6と大幅に異なる実装であり、EF4 /これかどうか。 –
[Entity Framework 5でdatetime2データ型を使用する](https://stackoverflow.com/questions/15248488/force-entity-framework-5-to-use-datetime2-data-type) – hazzik