【发布时间】:2013-01-18 16:00:42
【问题描述】:
我有数据库,其中有带 GPS 坐标的一流酒店。我想找到离我选择的坐标最近的地方。
我认为它应该是这样的(我在这里找到了很多示例代码并喜欢这个):
var coord = new GeoCoordinate(latitude, longitude);
var nearest = (from h in db.hotels
let geo = new GeoCoordinate(h.gps.lat, h.gps.lng)
orderby geo.GetDistanceTo(coord)
select h).Take(10);
问题是当我尝试搜索某些内容时出现此错误:
LINQ 仅支持无参数构造函数和初始化程序 给实体
我试图用谷歌搜索它,我发现将 linq 分成两部分可以帮助我,但我不确定如何。感谢您的帮助。
【问题讨论】:
-
目前正在尝试在数据库中进行算术运算。我怀疑如果没有大量工作,这是行不通的。你很可能想要一个存储过程或 UDF。
标签: c# linq entity-framework linq-to-entities gps