我正在使用 ASP.net MVC 开发一个 Web 应用程序,并且我有一个与 ADO.NET 实体框架连接的数据库。
在这个数据库中,我有一个以 GroupId 作为主键的表 Group,另一个以 UserId 作为主键的表 UserInfo 和另一个表 GroupUser,它不被视为实体,而是作为关联集,因为它被用作拥有组和用户之间的多对多关系。
GroupUser
包含GroupId
和UserId
作为复合键,两者都是各自表的外键。
这些是生成的Group
和User
类(关于这种关系)
// Group
public Group()
{
this.UserInfo1 = new HashSet<UserInfo>();
}
public virtual UserInfo UserInfo { get; set; }
public virtual ICollection<UserInfo> UserInfo1 { get; set; }
// UserInfo
public UserInfo()
{
this.Group = new HashSet<Group>();
this.Group1 = new HashSet<Group>();
}
public virtual ICollection<Group> Group { get; set; }
public virtual ICollection<Group> Group1 { get; set; }
要将记录添加到此GroupUser
表中,我正在执行此操作
int ownerId = Convert.ToInt32(WebSecurity.CurrentUserId);
group.UserInfo1.Add(conn.UserInfo.Find(ownerId));
但是我被困在如何在这张表中找到一条记录。如何通过在此处提供 groupId 和 userId 来检查特定用户是否属于该组?
Group group = conn.Group.Find(id);
int userId = Convert.ToInt32(WebSecurity.CurrentUserId);
谢谢你的帮助 :)