Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将SQL查询转换为Linq表达式_C#_Sql Server_Asp.net Mvc_Linq - Fatal编程技术网

C# 将SQL查询转换为Linq表达式

C# 将SQL查询转换为Linq表达式,c#,sql-server,asp.net-mvc,linq,C#,Sql Server,Asp.net Mvc,Linq,有表科目、学生和科目 Subject表有两列SubjectId和SubjectName subjectregistered表也有两列StudentID(StudentTable外键)和SubjectId(Subject外键) 我想转换这个SQL查询 SELECT SubjectName FROM Subject WHERE SubjectId IN ( SELECT SubjectId FROM SubjectEnrolled WHERE StudentID=7 )

有表
科目
学生
科目

  • Subject
    表有两列
    SubjectId
    SubjectName
  • subjectregistered
    表也有两列
    StudentID
    StudentTable
    外键)和
    SubjectId
    Subject
    外键)
我想转换这个SQL查询

SELECT SubjectName
FROM Subject
WHERE SubjectId IN 
(
    SELECT SubjectId
    FROM SubjectEnrolled
    WHERE StudentID=7
)
转换为Linq或Lamda表达式

using (var db = new DbContext())
{
    var res = from  r in db.Subjects.....
}
1-SQL:在中使用

SELECT SubjectName FROM Subject sub
INNER JOIN SubjectEnrolled subEn on sub.SubjectId = subEn.SubjectId
WHERE subEn.StudentID = 7
2-Linq查询:


我希望这对您有所帮助。

对不在中的sql使用已存在的内部联接。请检查此问题:这是否回答了您的问题?
var res = (from sub in db.Subjects
          join subEn in db.SubjectEnrolleds on sub.SubjectId equals subEn.SubjectId
          where subEn.StudentID = 7).ToList();