如何将sql查询转换为linq实体?

时间:2018-10-05 11:54:32

标签: c# sql-server linq entity-framework-6

INSERT INTO StudentInformation3.NewSameStudents (StudentID, Image)
SELECT s1.StudentID, s1.Image
FROM StudentInformation.student s1
WHERE EXISTS (SELECT 1 
              FROM StudentInformation2.NewStudent s2 
              WHERE s1.StudentID = s2.StudentID
             );

我的目标是通过比较字段将2个表添加到另一个表中,我使用sql进行此操作,但是我有一个学生模型,我想对实体进行此操作。

如何插入实体?

1 个答案:

答案 0 :(得分:0)

您可以使用相同的SQL。 Linq To SQL和Linq To EF都支持执行直接SQL命令。这种类型的命令更适合用于SQL,因此您可以使用直接SQL来执行。即:

context.ExecuteSqlCommand(@"INSERT INTO StudentInformation3.NewSameStudents (StudentID, Image)
SELECT s1.StudentID, s1.Image
FROM StudentInformation.student s1
WHERE EXISTS (SELECT 1 
              FROM StudentInformation2.NewStudent s2 
              WHERE s1.StudentID = s2.StudentID
             );");