Generated PropertiesのEntity Frameworkコアドキュメントは、DateTime
型で作成/更新されたプロパティの最初のコード"timestamp"の生成にデータアノテーションを使用できるようにします。エンティティフレームワークコアデータ注釈データベース生成値
コード最初の移行に伴い、以下のデータのアノテーションを使用しようとしている:
public class Foo {
// some properties
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public DateTime Created { get; set; }
// more properties
}
コマンドラインでコマンドdotnet ef migrations add AddFooTimestamp
を実行しようとしたとき、私は次のエラーが表示されます
アイデンティティ値の生成をプロパティタイプが 'DateTime'なので エンティティタイプ 'Foo'の 'Created'プロパティに使用できません。 ID 値の生成は、符号付き整数プロパティでのみ使用できます。
モデル内のドキュメントに記載されているデータアノテーションと、EFコアおよびSQL Server環境でのコードの最初のマイグレーションを効果的に活用する方法はありますか?または、今の時点で利用可能な注釈は[Timestamp]
ですか?
私のプロジェクトでは、ツール「012.01 preview2-final」とMicrosoft.EntityFrameworkCore
& Microsoft.EntityFrameworkCore.SqlServer
のバージョン「1.1.0」を使用しています。
ご協力いただきありがとうございます。私はDefault ValuesFluent API
を経由して設定し、データベーストリガーの組み合わせを利用INSERT
とUPDATE
アクションに設定されているDateTime
モデルプロパティに持つことが
データアノテーションを '[DatabaseGenerated(DatabaseGeneratedOption.Computed)]に変更してみてください。 – Thennarasan