ASP.net MVC は初めてです。データの結合を表示するビューモデルを作成しようとしています。コード例を次に示します。
public class Person
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
public ICollection<Relative> Relatives { get; set; }
}
public class Relative
{
[Key]
public int ID {get; set; }
public Person Person { get; set; }
public RelationType RelationType { get; set; }
}
public class RelationType
{
[Key]
public int ID { get; set; }
public string Description { get; set; }
}
public class PersonViewModel
{
public string Name { get; set; }
public ICollection<string> RelativeNames { get; set; }
public ICollection<string> RelativeTypes { get; set; }
}
public class PersonContext : DbContext
{
public DbSet<PersonViewModel> people { get; set; }
}
Visual Studio でコントローラーを作成しようとすると、次のエラーが発生します。
PersonViewModel のメタデータを取得できません。生成中に 1 つ以上の検証エラーが検出されました: EntityType 'PersonViewModel' にはキーが定義されていません。この EntityType のキーを定義します。