Ho un database e in esso ho un hotel di classe con coordinate GPS. Voglio ottenere i posti più vicini alle coordinate che scelgo.C# - LINQ - distanza più breve con latitudine e longitudine GPS
penso che dovrebbe essere simile a questo (ho trovato molti codici di esempio qui e come questo):
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);
Il problema è che ho questo errore quando ho provato a cercare qualcosa:
Solo costruttori senza parametri e inizializzatori sono supportati in LINQ to Entities
ho cercato di google un d ho trovato che dividere linq in due mi può aiutare ma non sono sicuro di come. Grazie per l'aiuto.
che sta attualmente cercando di fare l'aritmetica * nel database *. Sospetto che non funzionerà senza molto lavoro. Probabilmente vorrai un proc memorizzato o una UDF. –