You could first convert the location data in database to System.Device.Location.GeoCoordinate, then use LINQ to find the nearest one.
var coord = new GeoCoordinate(latitude, longitude);
var nearest = locations.Select(x => new GeoCoordinate(x.Latitude, x.Longitude))
.OrderBy(x => x.GetDistanceTo(coord))
.First();