0

データベース内の実際のテーブルには、 、 、 、および値 (すべて UTC) を格納するための個別の整数フィールドがyearありmonthますday(hourminuteとミリ秒は私のタスクには関係なく、ゼロに等しいと見なされます)。

言うまでもなくDateTime、アプリケーション側に型のフィールドを 1 つだけ用意し、すべての変換を Entity Framework モデル コードのカバーの下に隠すと、非常に便利です。

それを行う方法についての指示はありますか?私はまだEntity Frameworkの経験があまりありません。

4

1 に答える 1

1

前に同様の質問に答えました:データ アノテーションまたは Fluent を使用して、データ ストアとエンティティ クラスの間で値を変換できますか?

私の知る限り、これは現在EFでは不可能です。

できることは、データベースにマップされていないヘルパー プロパティを公開することです。

[NotMapped]
public DateTime DateTime
{
  get { return new DateTime( Year, Month, Day, Hour, Minute, 0, DateTimeKind.Utc); }
  set
  {
    Year = value.Year;
    Year = value.Year;
    Month = value.Month;
    Day = value.Day;
    Hour = value.Hour;
    Minute = value.Minute;
  }
}
于 2012-11-19T22:55:40.247 に答える