我有在EF 5.0我有一个多对多的关系,我的第一个步骤。 电影可以有多种类型和类型可以有多个电影
public class Movie
{
public int MovieId { get; set; }
[Required]
public string Name { get; set; }
public virtual ICollection<Type> Types { get; set; }
}
public class Type
{
public int TypeId { get; set; }
public string MovieType { get; set; }
public virtual ICollection<Movie> Movies { get; set; }
}
当我生成的数据库它创建多到许多电影和类型之间
所以,我应该做的播种此多对多表? 我试了很多的解决方案张贴在这里,但它没有工作。
此外,这是产生许多一对多关系的最佳方式首先使用EF代码
只要创建一个几部电影和几个类型,并通过添加一些这些类型的的创建关系Movie.Types
集合(或者反过来),例如:
protected override void Seed(MyContext context)
{
var movie1 = new Movie { Name = "A", Types = new List<Type>() };
var movie2 = new Movie { Name = "B", Types = new List<Type>() };
var movie3 = new Movie { Name = "C", Types = new List<Type>() };
var type1 = new Type { MovieType = "X" };
var type2 = new Type { MovieType = "Y" };
movie1.Types.Add(type1);
movie2.Types.Add(type1);
movie2.Types.Add(type2);
movie3.Types.Add(type2);
context.Movies.Add(movie1);
context.Movies.Add(movie2);
context.Movies.Add(movie3);
}
文章来源: How should I seed data to many to many relation in Entity Framework Code first 5.0