1つのテーブルのデータが2つのオブジェクトに含まれている必要があるというシナリオがあります。
[Table]
-Field1
-Field2
-Field3
-Field4
そして、クラスは次のようになります。
[Class1]
-Field1
-Field2
-Class2 object here
[Class2]
-Field3
-Field4
Class1で、フィールド3と4を含むClass2のプロパティに属性[NotMapped]を設定しました。また、データベースコンテキストに構成を追加しました。
public class ConfigurationClass1 : EntityTypeConfiguration<Class1> {
public ConfigurationClass1 () {
Property(o => o.Class2.Field3).HasColumnName("Field3");
Property(o => o.Class2.Field4).HasColumnName("Field4");
}
}
問題は、Class1でEntity Frameworkを使おうとすると、次のようになります。
プロパティ「Class2」は、タイプ「Class2」で宣言されたプロパティではありません。IgnoreメソッドまたはNotMappedAttributeデータアノテーションを使用して、プロパティがモデルから明示的に除外されていないことを確認します。それが有効なプリミティブプロパティであることを確認してください。
フラットテーブルにすべての情報を含むネストされたオブジェクトを持つエンティティで、Entity Framework Code Firstを最初に使用するにはどうすればよいですか?