我正在开发 ASP.NET MVC 应用程序,并在其中使用带有实体框架的 Mysql。但是我在执行这样的 Linq 查询时遇到了问题:
var place= dbContext.Places.FirstOrDefault(x => Math.Sqrt(x.Lat) > 0);
Run Code Online (Sandbox Code Playgroud)
我也尝试使用 SqlFunctions:
var place= dbContext.Places.FirstOrDefault(x => SqlFunctions.SquareRoot(x.Lat) > 0);
Run Code Online (Sandbox Code Playgroud)
但无论哪种方式,我都会收到“System.NotSupportedException”:
附加信息:1[System.Double] SquareRoot(System.Nullable无法将类型“System.Data.Entity.SqlServer.SqlFunctions”上的指定方法“System.Nullable 1[System.Decimal])”转换为 LINQ to Entities 存储表达式。
有什么方法可以使用平方根函数,以便将其转换为 LINQ to Entities 表达式?