CivicAddressResolver Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет функциональность для разрешения расположения, выраженного в виде координат, в административный адрес.
public ref class CivicAddressResolver sealed : System::Device::Location::ICivicAddressResolver
public sealed class CivicAddressResolver : System.Device.Location.ICivicAddressResolver
type CivicAddressResolver = class
interface ICivicAddressResolver
Public NotInheritable Class CivicAddressResolver
Implements ICivicAddressResolver
- Наследование
-
CivicAddressResolver
- Реализации
Примеры
В следующей программе показано, как вызвать ResolveAddress для синхронного разрешения гражданского адреса.
using System;
using System.Device.Location;
namespace ResolveAddressSync
{
class Program
{
static void Main(string[] args)
{
ResolveAddressSync();
}
static void ResolveAddressSync()
{
GeoCoordinateWatcher watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.High);
watcher.MovementThreshold = 1.0; // set to one meter
watcher.TryStart(false, TimeSpan.FromMilliseconds(1000));
CivicAddressResolver resolver = new CivicAddressResolver();
if (watcher.Position.Location.IsUnknown == false)
{
CivicAddress address = resolver.ResolveAddress(watcher.Position.Location);
if (!address.IsUnknown)
{
Console.WriteLine("Country: {0}, Zip: {1}",
address.CountryRegion,
address.PostalCode);
}
else
{
Console.WriteLine("Address unknown.");
}
}
}
}
}
Imports System.Device.Location
Module ResolveAddressSync
Public Sub ResolveAddressSync()
Dim watcher As GeoCoordinateWatcher
watcher = New System.Device.Location.GeoCoordinateWatcher(GeoPositionAccuracy.High)
Dim started As Boolean = False
watcher.MovementThreshold = 1.0 'set to one meter
started = watcher.TryStart(False, TimeSpan.FromMilliseconds(1000))
Dim resolver As CivicAddressResolver = New CivicAddressResolver()
If started Then
If Not watcher.Position.Location.IsUnknown Then
Dim address As CivicAddress = resolver.ResolveAddress(watcher.Position.Location)
If Not address.IsUnknown Then
Console.WriteLine("Country: {0}, Zip: {1}",
address.CountryRegion,
address.PostalCode)
Else
Console.WriteLine("Address unknown.")
End If
End If
Else
Console.WriteLine("GeoCoordinateWatcher timed out on start.")
End If
End Sub
Public Sub Main()
ResolveAddressSync()
Console.WriteLine("Enter any key to quit.")
Console.ReadLine()
End Sub
End Module
В следующей программе показано, как вызвать ResolveAddressAsync для разрешения гражданского адреса асинхронно.
using System;
using System.Device.Location;
namespace ResolveAddressSync
{
class Program
{
static void Main(string[] args)
{
ResolveAddressSync();
}
static void ResolveAddressSync()
{
GeoCoordinateWatcher watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.High);
watcher.MovementThreshold = 1.0; // set to one meter
watcher.TryStart(false, TimeSpan.FromMilliseconds(1000));
CivicAddressResolver resolver = new CivicAddressResolver();
if (watcher.Position.Location.IsUnknown == false)
{
CivicAddress address = resolver.ResolveAddress(watcher.Position.Location);
if (!address.IsUnknown)
{
Console.WriteLine("Country: {0}, Zip: {1}",
address.CountryRegion,
address.PostalCode);
}
else
{
Console.WriteLine("Address unknown.");
}
}
}
}
}
Imports System.Device.Location
Module ResolveAddressSync
Public Sub ResolveAddressSync()
Dim watcher As GeoCoordinateWatcher
watcher = New System.Device.Location.GeoCoordinateWatcher(GeoPositionAccuracy.High)
Dim started As Boolean = False
watcher.MovementThreshold = 1.0 'set to one meter
started = watcher.TryStart(False, TimeSpan.FromMilliseconds(1000))
Dim resolver As CivicAddressResolver = New CivicAddressResolver()
If started Then
If Not watcher.Position.Location.IsUnknown Then
Dim address As CivicAddress = resolver.ResolveAddress(watcher.Position.Location)
If Not address.IsUnknown Then
Console.WriteLine("Country: {0}, Zip: {1}",
address.CountryRegion,
address.PostalCode)
Else
Console.WriteLine("Address unknown.")
End If
End If
Else
Console.WriteLine("GeoCoordinateWatcher timed out on start.")
End If
End Sub
Public Sub Main()
ResolveAddressSync()
Console.WriteLine("Enter any key to quit.")
Console.ReadLine()
End Sub
End Module
Комментарии
Класс CivicAddressResolver предоставляет реализацию ICivicAddressResolver , которая разрешает расположение на основе координат в гражданский адрес, если поставщик расположения предоставляет как координаты, так и данные гражданского адреса.
Конструкторы
CivicAddressResolver() |
Инициализирует новый экземпляр класса CivicAddressResolver. |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ResolveAddress(GeoCoordinate) |
Синхронно разрешает административный адрес из расположения, выраженного в виде широты и долготы. Этот вызов блокирует выполнение вызывающего потока на время разрешения адреса. |
ResolveAddressAsync(GeoCoordinate) |
Разрешает адрес асинхронно из расположения на основании широты и долготы. Хотя адрес разрешается, вызов не блокирует выполнение вызывающего потока. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
ResolveAddressCompleted |
Происходит по завершении разрешения адреса, инициированного вызовом метода ResolveAddressAsync(GeoCoordinate). |