4

我有一个使用EF Core 空间数据Npgsql.EntityFrameworkCore.PostgreSQL 提供程序的几何列的表

class City
{
    public int ID { get; set; }

    public string CityName { get; set; }

    public Point Location { get; set; }
}

我曾经以这种方式按距离过滤

Point myLocation = new Point(longitude, latitude)
{
    SRID = 4326
};
cities = db.Cities.Where(a => a.Location.ProjectTo(2855).Distance(myLocation.ProjectTo(2855)) <= radiusMeters);

更新后我收到以下错误:

无法翻译 LINQ 表达式“DbSet()...”。附加信息:方法“App.GeometryExtensions.ProjectTo”的翻译失败。

它不使用ProjectTo()但按度数计算。有没有办法再次翻译此查询以使用仪表?

4

0 回答 0