C#中的SQL到LINQ(带有多个表和别名的查询)

本文关键字:别名 查询 SQL 中的 LINQ | 更新日期: 2023-09-27 17:57:55

是否有人可以将此查询转换为C#中的Linq。我在搜索,没有找到任何类似的查询。谢谢大家!SQL语句:

SELECT a.Amenaza, c.Nombre, c.Descripcion
 FROM AmenazasEstablecer a, ControlesEstablecer c, Matriz_Amenazas_ControlesEstablecer m
 WHERE a.IdAmenaza = m.IdAmenaza AND c.IdControl=m.IdControl;

C#中的SQL到LINQ(带有多个表和别名的查询)

您必须创建并指定一个DataContext,但一旦创建并指定,您就可以使用:

MyDataContext context = new MyDataContext("SomeConnectionString");
var results = from a in context.AmenazasEstablecer
              from c in context.ControlesEstablecer
              from m in context.Matriz_Amenazas_ControlesEstablecer
              where a.IdAmenaza == m.IdAmenaza && c.IdControl == m.IdControl
              select new {
                  a.Amenaza,
                  c.Nombre,
                  c.Descripcion
              });
var results = from a in context.AmenazasEstablecer 
              join m in context.Matriz_Amenazas_ControlesEstablecer 
                          on  a.IdAmenaza equals m.IdAmenaza
              join c in context.ControlesEstablecer 
                          on c.IdControl equals m.IdControl
             select new {a.Amenaza, c.Nombre, c.Descripcion};