C# 无法使用nettopologysuite对varbinary调用方法

C# 无法使用nettopologysuite对varbinary调用方法,c#,linq,nettopologysuite,C#,Linq,Nettopologysuite,我试图用efcore和linq请求我的db,但我有一个错误:无法调用varbinary上的方法 我弄不清楚 代码是: places .Where(p => p.Place.Location != null && p.Place.Location.Distance(currentLocation)<=input.Radius) .OrderBy(p => currentLocation.Distance(p.Place.Location)); 如果我这样做,它会

我试图用efcore和linq请求我的db,但我有一个错误:无法调用varbinary上的方法

我弄不清楚

代码是:

places
.Where(p => p.Place.Location != null && p.Place.Location.Distance(currentLocation)<=input.Radius)
.OrderBy(p => currentLocation.Distance(p.Place.Location));
如果我这样做,它会起作用。这似乎是不起作用的顺序

places = places.Where(p => p.Place.Location != null && p.Place.Location.Distance(currentLocation) <= input.Radius);
// .OrderBy(p => currentLocation.Distance(p.Place.Location));
places=places.Where(p=>p.Place.Location!=null&&p.Place.Location.Distance(currentLocation)currentLocation.Distance(p.Place.Location));
input.radius是一个整数

你能帮忙吗


谢谢,

好的,我通过在orderby中反转呼叫解决了我的问题

下面的代码适用于任何有此问题的人

places = places.Where(p => p.Place.Location != null && p.Place.Location.Distance(currentLocation) <= input.Radius)
.OrderBy(p => p.Place.Location.Distance(currentLocation));
places=places.Where(p=>p.Place.Location!=null&&p.Place.Location.Distance(currentLocation)p.Place.Location.Distance(currentLocation));

在我的Where语句中也遇到了同样的问题,这对我很有效,谢谢!
places = places.Where(p => p.Place.Location != null && p.Place.Location.Distance(currentLocation) <= input.Radius)
.OrderBy(p => p.Place.Location.Distance(currentLocation));