[英]How to use a lookup table in entity?
我已将数据库导入实体。 一切都很好,除了我的查找表不再容易访问了。
示例我有一个Users表和一个Friends表。 许多唯一用户可以拥有相同的朋友。 为了解决这个问题,我有一个由2列(UserID和FriendID)组成的Users_Friends表。
我希望能够针对唯一的用户ID查询该表,以提取与该特定用户关联的所有FriendID。 但是当我尝试去做
using (var db = new GameAlertDBEntities())
{
var friendIDs = db.Users_Friends.
}
我立即被告知无法解析符号Users_Friends。 我在这里停下来试图弄清楚在前进之前如何解析符号。 奇怪的是,足够多的实体找到了我所有的其他表,而没有一个查找表。
多对多关系aux表未抽象为EF表。 相反,您可以像这样直接访问相关实体的列表:
using (var db = new GameAlertDBEntities())
{
var user = db.Users.First(); // or any other query for user
var friends = user.Friends;
}
这是怎么发生的? 实体框架会在导入期间识别此类关系,并在后台进行所有工作。
如果UserId和FriendId未标记为外键,则必须通过简单查询来查找朋友
var userFriends = db.Users.Friends.ToList();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.