Поиск недвижисоти на карте C# WINDOWS FORMS

Реализовал поиск по картам при помощи GMap.NET. Ввожу адрес и у меня открывается карта с этим адресом и маркер с информацией о данном адресе. Теперь мне необходимо сделать так, чтобы по фильтрам на карте отображались маркера с информацией о недвижимости. Пример: https://realty.yandex.ru/ramenskoe/kupit/kvartira/1,2-komnatnie/karta/ Управление пакетами NuGet не содержит в себе конкретное API под яндекс недвижимость. Возможно ли это сделать через какие-то сторонние сервисы недвижимости? Если возможно, то через какие и как. Не могу понять как делать сам запрос и к какому ресурсу обращаться введите сюда описание изображенияКод для поиска по адресу:

   if(textBox1.Text !="") 
{ 
OverlayForAddress.Clear(); 
} 
//Запрос с API ключом 
//Запрос к API геокодирования Yandex. 
string zapros = "https://maps.googleapis.com/maps/api/geocode/xml?address={0}&sensor=true_or_false&language=ru&key=AIzaSyBXECwJv2RalFwflUd2l7AyE-_lo4Wizvs"; 
string url = string.Format(zapros, Uri.EscapeDataString(textBox1.Text)); 

//Выполняем запрос к универсальному коду ресурса (URI). 
HttpWebRequest request =(HttpWebRequest)WebRequest.Create(url); 

//Получаем ответ от интернет-ресурса. 
WebResponse response = request.GetResponse(); 

//Экземпляр класса System.IO.Stream 
//для чтения данных из интернет-ресурса. 
Stream dataStream = response.GetResponseStream(); 

//Инициализируем новый экземпляр класса 
//System.IO.StreamReader для указанного потока. 
StreamReader sreader = new StreamReader(dataStream); 

//Считывает поток от текущего положения до конца. 
string responsereader = sreader.ReadToEnd(); 

//Закрываем поток ответа. 
response.Close(); 

//Парсинг данных 
XmlDocument xmldoc = new XmlDocument(); 

xmldoc.LoadXml(responsereader); 


if (xmldoc.GetElementsByTagName("status")[0].ChildNodes[0].InnerText == "OK") 
{ 

//Получение широты и долготы. 
XmlNodeList nodes = xmldoc.SelectNodes("//location"); 

//Переменные широты и долготы. 
double latitude = 0.0; 
double longitude = 0.0; 

//Получаем широту и долготу. 
foreach (XmlNode node in nodes) 
{ 
latitude = XmlConvert.ToDouble(node.SelectSingleNode("lat").InnerText.ToString()); 
longitude = XmlConvert.ToDouble(node.SelectSingleNode("lng").InnerText.ToString()); 
} 

//Строка со всеми данными 
string formatted_address = 
xmldoc.SelectNodes("//formatted_address").Item(0).InnerText.ToString(); 


string[] words = formatted_address.Split(','); 
string dataMarker = string.Empty; 
foreach (string word in words) 
{ 
dataMarker += word + ";" + Environment.NewLine; 
} 
//Установка маркера для парсинга 
gMapControl1.Overlays.Add(OverlayForAddress); 
GMarkerGoogle addressmarker = new GMarkerGoogle(new PointLatLng(latitude, longitude), GMarkerGoogleType.blue); 
addressmarker.ToolTip = new GMapRoundedToolTip(addressmarker); 
addressmarker.ToolTipMode = MarkerTooltipMode.Always; 
addressmarker.ToolTipText = dataMarker; 
OverlayForAddress.Markers.Add(addressmarker); 
gMapControl1.Position = new PointLatLng(latitude, longitude);

Ответы (1 шт):

Автор решения: aepot

К какому ресурсу обращаться - это вопрос не по теме StackOverflow, здесь решаются вопросы по программированию.

Как сделать запрос.

// Делается один раз при старте приложения, можно как глобальную переменную
private HttpClient client = new HttpClient();

// сам запрос в нужном вам методе
string url = "http://example.org";
string response = client.GetStringAsync(url).GetAwaiter().GetResult();
→ Ссылка