ASP MVC および C# の複雑なデータ型とエンティティを理解するのに問題があります。エンティティ (DB テーブル) を意図していない次の型を作成することから始めました。
public class Period : IPeriod
{
public DateTime From { get; set; }
public DateTime To { get; set; }
}
このタイプをモデルに追加しました:
public class Event
{
public int ID { get; set; }
public string Title { get; set; }
public Period EventTime { get; set; }
}
これはうまくいきました。Period が複合型であることは理解できたようですが、実体ではありません。EventTime_From 列と EventTime_To 列を Event テーブルに追加しただけです。
ただし、インターフェイスを削除し、クラスを別の名前空間に移動し、クラスにメソッドを追加することで、Period 型に複雑さを加えました。突然、データベースを再構築しようとすると、突然エンティティ タイプとして解釈され、主キーが見つからないという例外がスローされました。
ここのシステムは何ですか?クラスが複合型と見なされるのはいつで、エンティティと見なされるのはいつですか?