Я использую Entity Framework Core 2.2.3 с MySql, ASP.NET Core 2.2 WebApi
Да, я знаю, что этот вопрос (геокодирование и обратное геокодирование) задавался сто раз, но их нетДата.В 2019 году я хотел бы узнать о новейшем и лучшем подходе расчета геолокации.
В моем проекте у меня есть адреса в таблице свойств, и мне нужно
- преобразовать адрес в лат и lng
- вычислить расстояние между 2 адресами
- лучше не зависеть от сторонних библиотек, например, Google Map API
Я знаю, что мы можем использовать EF Core для геокодирования и, вероятно, для вычисления расстояния, но я нашел документ , говорящийэто только для SqlServer, InMemory, PostgreSql и т. д. MySql отсутствует в списке.
Затем я обнаружил System.Spatial , однако он предназначен для старой .Net Framework.Затем Microsoft.Spatial (он нацелен на .NET Platform Standard 1.1, так что я думаю, что все будет в порядке для .Net Core 2.2, верно?), Но когда я открыл git sample ,ему около 2 лет.
Я действительно ценю, если кто-нибудь может указать мне правильное направление.
Спасибо.
Обновление
Прочитав Пространственные данные OData , я обнаружил, что он тесно связан с MS SQL и имеет определенные ограничения (https://devblogs.microsoft.com/odata/using-geospatial-data/)? Однако я использую MySql и, похоже, это не тот подход, который я мог быИспользование. Также эта статья была написана еще в 2011 году и не может видеть последнее обновление.
Обновление 2 Я нашел NuGet Package
Просто удивительноможно ли это использовать в .Net Core 2.2?
На этом github написано для .NET Core, НО, когда я пытаюсь установить его из диспетчера пакетов NuGet, я обнаружил, что он зависит от.NetFramework v4.5.
Поскольку .NetFramework не является кросс-платформеннымtform, означает ли это, что пакет NuGet не будет правильно работать в Linux?