【发布时间】:2013-07-25 13:50:39
【问题描述】:
我正在尝试通过我的 LINQ 查询获取最近的位置:
var coord = new GeoCoordinate(loc.Latitude, loc.Longitude);
var nearest = ctx.Locations
.Select(x => new LocationResult {
location = x,
coord = new GeoCoordinate(x.Latitude.GetValueOrDefault(),
x.Longitude.GetValueOrDefault())
})
.OrderBy(x => x.coord.GetDistanceTo(coord))
.First();
return nearest.location.Id;
但是,我收到以下错误:
LINQ to Entities 仅支持无参数构造函数和初始化程序。
我试过用谷歌搜索,但我仍然不确定如何解决它。什么是无参数构造函数?
【问题讨论】:
-
是否可以写成:new GeoCoordinate{x.Latitude.GetValueOrDefault(), x.Longitude.GetValueOrDefault()}
-
@jyparask - 嗯?这甚至不会建立。
-
可以分享LocationResult类吗?
标签: c# linq entity-framework linq-to-entities