我有一個問題,在實體框架實體框架的關係
這裏的關係是我的問題:
我有兩類:用戶和組
- 組必須有一個所有者(用戶)
- 一個組可以有0或幾個成員(用戶)
- 用戶可以是0或幾個組的所有者
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>();
}
}
這裏是插入組功能:
[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);
}
的問題是:
- 當我運行調試插入功能,正確設置「所有者」屬性(在db.savechanges)
- 但之後,當我在db中選擇一個組(group group = db.Groups.Find(id );),「所有者」參數爲空。
任何幫助將非常感激。
非常感謝
是否使用EF代碼第一次?或者你在使用EF設計師嗎? – deerchao