public static IAsyncResult GetImageryMetadataAsync(ImageryMetadataRequest imageryRequest, Action <Response> clientCallback, Action <Exception> clientErrorCallback)
        {
            HttpWebRequest            httpWebRequest            = WebRequest.Create(imageryRequest.GetRequestUrl()) as HttpWebRequest;
            InternalAsyncRequestState internalAsyncRequestState = new InternalAsyncRequestState();

            internalAsyncRequestState.Request          = httpWebRequest;
            internalAsyncRequestState.ResponseCallBack = clientCallback;
            internalAsyncRequestState.ErrorCallBack    = clientErrorCallback;
            InternalAsyncRequestState state = internalAsyncRequestState;

            return(httpWebRequest.BeginGetResponse(BingMapsService.RespCallback, state));
        }
        public static Response GetImageryMetadata(ImageryMetadataRequest imageryRequest)
        {
            HttpWebRequest httpWebRequest = WebRequest.Create(imageryRequest.GetRequestUrl()) as HttpWebRequest;

            return(BingMapsService.ReadResponse((HttpWebResponse)httpWebRequest.GetResponse()));
        }