实体框架的问题 - MySQL LinQ查询

时间:2015-05-25 10:02:02

标签: c# mysql entity-framework linq linq-to-sql

我在使用where条件的三元运算符以及LinQ查询中的group by子句时遇到问题。

我的应用程序是带有Entity Framework 6的MVC4(MySql.Data.Entity.EF6.dll版本6.9.6),连接到MySQL DB - 5.6。

此处列出的示例查询:

bool activeFlag = true;
var objCurrency = (from table in Db.Table.AsNoTracking()
       where (activeFlag ? table.Active == 1 : table.Active == 0)
       group table by table.Code into grp
       select grp.OrderByDescending(t =>table.EffectiveFrom). FirstOrDefault()).ToList();  

查询在MS SQL 2008 R2上正常运行,但在MySql上失败。

如果我们从where子句中删除三元运算符,或者如果我们删除组,则查询正在运行。

还有其他方法可以编写业务逻辑,但我必须在很多其他地方重写代码。我正在努力避免返工。

请建议如何解决此问题。这是EF MySQL提供程序中的错误吗?

0 个答案:

没有答案