LINQ在另一个表中通过外键表

时间:2016-12-27 09:20:37

标签: c# performance entity-framework linq

我有三张表格如下

  1. 当然(id,name,desc)
  2. 学生(id,name,courceId)
  3. 用户(id,name,courseId)
  4. see img

    我需要让学生当然分配给当前用户。

    我的问题是如何获取具有表的外键的表记录 我做了以下操作,但是代码示例访问了DB两次。是否有任何方法可以访问它。

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\Application]
    "MaxSize"=dword:00000400
    

1 个答案:

答案 0 :(得分:0)

就像在T-SQL中一样,你需要一个连接:

     var userId = User.Identity.GetUserId();

var students = _context.Users.Where(x => x.Id == userId)
.Join(_context.Students, u => u.CourseId, s => s.CourseId, (u,s) => s)
.ToList();