У меня есть абстрактный суперкласс DataContent:
public abstract class DataContent
{
[Key(), DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[ForeignKey("Sheet")] //Foreign Key van Sheet
public int SheetId { get; set; }
public string Name { get; set; }
public DataContent(int i, string n)
{
Id = i;
Name = n;
}
и 3 подкласса, например EmptyContent:
public class EmptyContent: DataContent
{
//TODO: Do these keys have to be here as well???
[Key(), DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[ForeignKey("Sheet")] //Foreign Key van Sheet
public int SheetId { get; set; }
public string Name { get; set; }
public string Text { get; set; }
public EmptyContent (int i, string n) : base(i,n)
{
Text = "";
}
}
Мой вопрос: нужно ли объявлять (внешние) ключидважды для Entity Framework для создания базы данных?или я могу просто поместить их только в суперкласс Datacontent?
[Еще студент, извините, если этот вопрос кажется вам глупым:)]