В голову приходит следующее: Строит геометрический круг из этих точек. И потом узнать входить ли точка в круг. Но как можно сделать такой круг и тем более для маршрута никак не соображаю. Геометрия 3 были.
У меня тоже такие мысли но в таком случае нагрузка будет большой. Надо сверяет каждую координату со всеми существующими координатами. Работает хорошо но если тут один маячок но если будет несколько тогда начинается проблемы.
Sanostee: Если использовать универсальный тип Т тогда компилятор ругается что тип Т не может быть значимым типом, так как он работает только с ссылочным типом. Это можно решить если использовать IQueryable но тогда начинает ругаться EF. Вот текст ошибки:
'TransportTrackServiceAPI.Models.GPSTrackingServiceModel.Model.Person' to type 'TransportTrackServiceAPI.Models.GPSTrackingServiceModel.Interface.IObject'. LINQ to Entities only supports casting EDM primitive or enumeration types.
И по этому если использовать только интерфейсы т.е. вместо T использовать IQueryable < IObject > тогда все заработает правильно.
Роман: Да если использовать второй тогда придется для каждого надо написать один и тот же запрос по несколько раз. На счет первого варианта. Это серьезно влияет на скорость или можно мириться?
Я курсе как создается расширения и кажется я не совсем правильно сформулировал запрос. Хотел создать расширение метода для класса DBSet вроде такого ExistById(int Id). Но никак не могу найти решение.