J'ai un problème avec les relations dans l'entité-cadrerelations Entity Framework
Voici mon problème:
J'ai deux classes: l'utilisateur et le groupe
- Un groupe doit avoir un propriétaire (utilisateur)
- Un groupe peut avoir 0 ou severals Membres (utilisateur)
- Un utilisateur peut être le propriétaire du groupe 0 ou severals
User.cs:
public class User
{
[Key]
public int userId { get; set; }
[Display(Name="Firstname")]
public string firstname { get; set; }
[Display(Name = "Lastname")]
public string lastname { get; set; }
[Display(Name = "Email")]
public string email { get; set; }
}
Group.cs:
public class Group
{
[Key]
public int idGroup { get; set; }
public string name { get; set; }
public User owner { get; set; }
public List<User> members { get; set; }
public Group()
{
members = new List<User>();
}
}
Et voici la fonction de groupe d'insertion:
[HttpPost]
public ActionResult Create(Group group)
{
if (ModelState.IsValid)
{
group.owner = db.Users.Attach((User)Session["user"]);
//Current user stored in session and already presents in User table
db.Groups.Add(group);
db.SaveChanges();
return RedirectToAction("Index", "Home");
}
return View(group);
}
Le problème est:
- Lorsque j'exécute le débogage dans la fonction d'insertion, l'attribut "owner" est correctement défini (à db.savechanges)
- Mais après, quand je sélectionne un groupe dans db (Group group = db.Groups.Find (id);), le paramètre "owner" est null.
Toute aide serait vraiment appréciée.
Merci beaucoup
Vous utilisez le code EF Première? Ou utilisez-vous le concepteur EF? – deerchao