【问题标题】:Entity Framework - SQL command to LINQ实体框架 - 到 LINQ 的 SQL 命令
【发布时间】:2015-06-24 09:37:05
【问题描述】:

我无法将此 SQL 命令转换为 LINQ

SELECT tarif.*, prirazeni.Nazev
FROM `tarif`
INNER JOIN prirazeni
ON tarif.intern_id = prirazeni.intern_id
WHERE tarif.id_pojistovna = 'xx' AND cena IS NOT NULL AND prirazeni.nazev = 'yyyy'
GROUP BY id_vstupni_zdroj

我的 LINQ:

var total = (from tarif in context.Tarifs
             join prirazeni in context.Prirazenis on tarif.Intern_id equals prirazeni.Intern_id into joined
             from Join in joined
             where tarif.Id_pojistovna == idPojistovna && Join.Nazev == nazev && tarif.Cena != null && tarif.Id_vstupni_zdroj != idVstupniZdroj 
             group tarif by tarif.Id_vstupni_zdroj into tarifGrouped
             from grouped in tarifGrouped
             select grouped
             ).ToList();

在 MySQL Adminer 上,SQL 命令可以正常工作,但 LINQ 会返回所有行。

怎么了?

【问题讨论】:

    标签: c# mysql .net entity-framework linq


    【解决方案1】:

    我认为你有额外的命令 试试这个。

    var total = (from tarif in context.Tarifs
                 join prirazeni in context.Prirazenis on tarif.Intern_id equals prirazeni.Intern_id
                 where tarif.Id_pojistovna == idPojistovna && prirazeni.Nazev == nazev && tarif.Cena != null && tarif.Id_vstupni_zdroj != idVstupniZdroj
                 group by tarif.Id_vstupni_zdroj
                 select new {tarif, prirazeni}).ToList();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-05
      • 1970-01-01
      • 2011-06-15
      • 1970-01-01
      相关资源
      最近更新 更多