[英]Removing a radius clause in my dbGeography linq-to-entity statement
如何删除linq-to-entity语句中的“半径”,以免将搜索范围限制为半径?
仅供参考-我想让我的查询搜索以'term'开头的名称,并以最靠近位置点的名称开头向外搜索,但不限于半径
DbGeography location = DbGeography.FromText("POINT(" + longitude.ToString() + " " + latitude.ToString() + ")");
int radius = (50 * 5280); // 50 miles
var namesList = (from N in dbContext.Profiles
where N.FullName.StartsWith(term)
&& N.LocationPoints.Distance(location) <= radius
orderby N.LocationPoints.Distance(location) ascending
select new ProfileNameSearch {
label = N.FullName + " - " + N.Location,
value = N.FullName,
location = N.LocationPoints.Latitude.ToString() + "," + N.LocationPoints.Longitude.ToString()
}).Take(10).ToList();
只需删除行
&& N.LocationPoints.Distance(location)<=半径
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.