Entity Framework Code First 关系:一对多到多个实体
Entity Framework Code First Relationships: One to Many to Multiple Entities
这是我使用 EF 的第一个项目。我正在创建一个模型,其中(这是一个示例)电影和电视剧作为实体。两者都有附注。 Note 也是一个实体。我想在 Movies -> Notes 和 TVSeries -> Notes 之间建立一对多的关系。如何实现?
笔记中需要有一些东西来定义笔记是属于电影还是系列。
您无法创建具有两个不同 parents 并且它们之间具有适当 primary/foreign 键关系的 child。
假设 Movies 和 TVSeries 具有共同的属性,一个选项是在 Movies/TV 关系中使用继承并让 Notes 挂在超类之外。类似于:
public abstract class EntertainmentBase
{
public int Id { get; set; }
public string Title { get; set; }
// other common properties
}
public class Movie
{
// properties specific to a movie
}
public class TVSeries
{
// properties specific to a TV Series
}
public class Note
{
public int NoteId { get; set; }
public int BaseEntertainmentId { get; set; }
}
这是我使用 EF 的第一个项目。我正在创建一个模型,其中(这是一个示例)电影和电视剧作为实体。两者都有附注。 Note 也是一个实体。我想在 Movies -> Notes 和 TVSeries -> Notes 之间建立一对多的关系。如何实现?
笔记中需要有一些东西来定义笔记是属于电影还是系列。
您无法创建具有两个不同 parents 并且它们之间具有适当 primary/foreign 键关系的 child。
假设 Movies 和 TVSeries 具有共同的属性,一个选项是在 Movies/TV 关系中使用继承并让 Notes 挂在超类之外。类似于:
public abstract class EntertainmentBase
{
public int Id { get; set; }
public string Title { get; set; }
// other common properties
}
public class Movie
{
// properties specific to a movie
}
public class TVSeries
{
// properties specific to a TV Series
}
public class Note
{
public int NoteId { get; set; }
public int BaseEntertainmentId { get; set; }
}