Я работаю над приложением, где мне нужно узнать ближайшие больницы, находящиеся в радиусе 200 миль. У меня есть список больниц, широта и долгота которых сохраняются в базе данных, но я хочу получить местоположение устройства. Как я могу получить местоположение устройства. Ниже я использую следующий код.Как получить текущее местоположение устройства в C#
namespace GoogleMaps
{
class Program
{
private double HaversineDistance(double firstLat, double firstLong, double secondLat, double secondLong)
{
double dLat = this.toRadian(secondLat - firstLat);
double dLon = this.toRadian(secondLong - firstLong);
double a = Math.Sin(dLat/2) * Math.Sin(dLat/2) +
Math.Cos(this.toRadian(firstLat)) * Math.Cos(this.toRadian(secondLat)) *
Math.Sin(dLon/2) * Math.Sin(dLon/2);
double c = 2 * Math.Asin(Math.Min(1, Math.Sqrt(a)));
double d = 6371 * 2 * Math.Asin(Math.Min(1, Math.Sqrt(a)));
return d;
}
private double toRadian(double val)
{
return (Math.PI/180) * val;
}
static void Main(string[] args)
{
double dist;
Program a = new Program();
dist = a.HaversineDistance(28.6100, 77.2300, 26.8470, 80.9470);
Console.WriteLine("Harversine Distance = " + dist);
Console.ReadKey();
}
}
}
Спасибо за ссылку .. Лучше будет использовать Google Map Geolocation API Service или GeoCoordinateWatcher Class. – user3026519