您好我最近从SqlServer 2014将项目迁移到MySql,并且许多EF查询停止工作,并提供不同的错误。现在我正在努力:
Var allData = (from p in dbObj.servicewiserevenues
where p.pdate.Month == DateTime.Now.Month && p.pdate.Year == DateTime.Now.Year
group p by p.tbservice.tbcountry.CountryName into grp
select new
{
N = grp.Key,
R = grp.Sum(a => a.total_revenue / a.tbservice.tbcountry.CountryCurrencyConversionRate)
}).AsEnumerable()
.Select(p => new
{
Name = p.N,
Revenue=p.R
//Revenue =Convert.ToDouble(p.R).ToString("#,#",CultureInfo.GetCultureInfo("en-US"))
}).OrderBy(z => z.Name).ToList();
当与SqlServer一起使用时,此查询完全正常,但现在给出了MySql错误。
错误是:
'where子句'中的未知列'Distinct1.CountryName'描述: 在执行当前期间发生了未处理的异常 网络请求。请查看堆栈跟踪以获取更多信息 错误以及它在代码中的起源。
异常详细信息:MySql.Data.MySqlClient.MySqlException:未知 'where子句'中的列'Distinct1.CountryName'
来源错误:
第189行:{第190行:var allData = default(object); 第191行:allData =(来自dbObj.servicewiserevenues中的p 第192行:其中p.pdate.Month == DateTime.Now.Month&& p.pdate.Year == DateTime.Now.Year第193行:
将p.tbservice.tbcountry.CountryName分组到grp源文件:F:\ Guri_Projects \ DM \ DM \ Controllers \ HomeController.cs
行:191