場所が変更されたときに、ユーザーの場所をサーバーに更新する必要があります。これを達成する方法を教えてください。
以下の方法を使用:
void GeoPositionChanged(object sender, GeoPositionChangedEventArgs<GeoCoordinate> e)
{
_pushpins.Clear();
var cor = new GeoCoordinate(e.Position.Location.Latitude, e.Position.Location.Longitude);
//Using the current coordinates define the Map center to those coordinates.
map.Center = cor;
_pushpins.Add(new PushpinModel
{
UserId=userId,
Description = "test",
Name = "test",
Location = new GeoCoordinate(e.Position.Location.Latitude,
e.Position.Location.Longitude),
DatetimeAdded = DateTime.Now
});
map.ZoomLevel = 15;
//locationupdate method
locationupdate(e.Position.Location.Latitude,
e.Position.Location.Longitude);
}
private void locationupdate(double lat,double lon)
{
bool isAvailable = NetworkInterface.GetIsNetworkAvailable();
if (isAvailable == true)
{
try
{
WebClient wc = new WebClient();
wc.DownloadStringAsync(
new Uri("http://{ipaddress}/Network/Records/UpdateLocation?userid="+userId+"&latitude="+lat+"&longitude="+lon));
wc.DownloadStringCompleted +=
new DownloadStringCompletedEventHandler(
wc_DownloadStringUpdateCompleted);
}
catch (Exception ex)
{
throw;
}
}
else
{
MessageBox.Show("Network is not available.Please try again later");
}
}
ユーザーが自分の場所を変更するたびに、上記が場所を更新することを教えてください。