7

StoreGeneratedPattern="Computed"タイプの列で問題なく動作しますtimestamp。ただし、TimeStampを人間が読める形式で表示することはできません。

{TimeStamp}したがって、SQLタイムスタンプをDateTimeに解析できないため、ユーザーに「この行が変更されました」と表示することはできません。

列の計算列も作成できるDateTimeので、手動で設定する必要はありませんか? myEntity.LastModification = DateTime.Now

言うまでもなく、一部のユーザーがコンピューターの時間を変更するだけで、本当に何か悪いことをしたい場合は、エラーが発生しやすくなります。

4

1 に答える 1

1

はい、ここで説明されているように:列のデフォルト値を指定する方法はありますか? データベースの一部の DateTime 列が getdate() に設定されていますが、EF はこれらのデフォルト値を認識していません

エキス:

... StoreGeneratedPattern を Identity (値が挿入時にのみ計算される場合) または Computed (更新ごとに計算される場合) に設定した場合、SaveChanges を呼び出すと、EF はデータベースで生成された値を取得し、それをもたらします。オブジェクトを更新するために戻って...

編集: DB サーバー側の変更日を更新するには、この回答https://stackoverflow.com/a/8461681/1679310に従ってください。Computed設定はリロードを行います

于 2012-12-14T09:32:54.040 に答える