Reputation: 51
I'am using EF code first to buil my project. I use seed method to initialize data in my database, but only some class model data have been register in the database. I dont have any warning or problem. for exemple: 1) Does not
var categories = new List<Categorie>{
new Categorie{Nom="Informatique"},
new Categorie{Nom="Bien Etre"},
};
categories.ForEach(s => context.Categories.Add(s));
context.SaveChanges();
Class model:
public class Categorie
{
public int CategorieID { get; set; }
public string Nom { get; set; }
public virtual ICollection<Cour> Cours { get; set; }
}
2) Done
var coachs = new List<Coach>
{
new Coach{Nom="Guith",Prenom="Etienne", Login="etienneguith",Password="etienneguith",Profession="Neurologue",Cour="Medecine generale",Email="[email protected]",agenda=temp1},
new Coach{Nom="John",Prenom="Robert", Login="robertjohn",Password="robertjohn",Profession="Juge",Cour="Droit Penal",Email="[email protected]",agenda=temp2},
};
categories.ForEach(s => context.Categories.Add(s));
context.SaveChanges();
Class Model
public class Coach
{
public int CoachID { get; set; }
public string Nom { get; set; }
public string Prenom { get; set; }
public string Login { get; set; }
public string Password { get; set; }
public string Profession { get; set; }
public string Cour { get; set; }
public string Email { get; set; }
public DateTime agenda { get; set; }
public virtual ICollection<Session> Sessions { get; set; }
}
Upvotes: 1
Views: 264
Reputation: 1252
Looks like you are unintentionally iterating the categories collection twice.
var coachs = new List<Coach>
{
new Coach{Nom="Guith",Prenom="Etienne", Login="etienneguith",Password="etienneguith",Profession="Neurologue",Cour="Medecine generale",Email="[email protected]",agenda=temp1},
new Coach{Nom="John",Prenom="Robert", Login="robertjohn",Password="robertjohn",Profession="Juge",Cour="Droit Penal",Email="[email protected]",agenda=temp2},
};
categories.ForEach(s => context.Categories.Add(s));
context.SaveChanges();
Looks like it should be:
var coachs = new List<Coach>
{
new Coach{Nom="Guith",Prenom="Etienne", Login="etienneguith",Password="etienneguith",Profession="Neurologue",Cour="Medecine generale",Email="[email protected]",agenda=temp1},
new Coach{Nom="John",Prenom="Robert", Login="robertjohn",Password="robertjohn",Profession="Juge",Cour="Droit Penal",Email="[email protected]",agenda=temp2},
};
coachs.ForEach(s => context.Coachs.Add(s));
context.SaveChanges();
Upvotes: 3