Потребляйте XML-сервис из кода позади
Привет,
Я пытаюсь использовать правительственный веб-сервис, чтобы получить адресную информацию.
Я попробовал ниже код, но он ничего не возвращает, хотя он отлично работает, когда я пробую его на моем WinForm при использовании Добавление Веб-Службы
Пример допустимого номера указан в прилагаемом проекте
1923578758
Что я уже пробовал:
Вот пример проекта:
https://www.jassimrahma.net/temp/XamarinMakani.zip[^]
и код, который я пробовал, находится здесь:
Я попробовал ниже, но не получилось:
private string ConstructSoapRequest(string a, string b) { return String.Format(@"<?xml version=""1.0"" encoding=""utf-8""?> <s:Envelope xmlns:s=""http://schemas.xmlsoap.org/soap/envelope/""> <s:Body> <Add xmlns=""http://CalculatorService/""> <a>{0}</a> {1} </Add> </s:Body> </s:Envelope>", a, b); } private async void GetMakani() { var soapString = this.ConstructSoapRequest(EntryMakaniNumber.Text, ""); string url = "https://www.makani.ae/MakaniPublicDataService/MakaniPublic.svc?singleWsdl"; using (var client = new HttpClient()) { client.DefaultRequestHeaders.Add("SOAPAction", url); var content = new StringContent(soapString, Encoding.UTF8, "text/xml"); using (var response = await client.PostAsync("https://www.makani.ae/MakaniPublicDataService/MakaniPublic.svc?singleWsdl", content)) { var soapResponse = await response.Content.ReadAsStringAsync(); System.Diagnostics.Debug.WriteLine("MAKANI RESPONSE"); System.Diagnostics.Debug.WriteLine("---------------"); System.Diagnostics.Debug.WriteLine(soapResponse); System.Diagnostics.Debug.WriteLine("---------------"); System.Diagnostics.Debug.WriteLine("MAKANI RESPONSE"); } } LabelLatitude.Text = "Latitude: "; LabelLongitude.Text = "Longitude: "; }