Код С#:

using (WebClient client = new WebClient())
{
// Определяем координаты маркера
double latitude = 38.9072;
double longitude = -77.0369;
// Определяем URL для карты OpenLayers с помощью маркера
string url = «http://localhost/map.html?lat=' + широта + &lon= + долгота;
/ / Загрузите HTML-код карты
string mapHtml = client.DownloadString(url);
// Отобразите HTML-код карты в веб-браузере
webBrowser1.DocumentText = mapHtml;
}

HTML-код (map.html):

‹!DOCTYPE html›
‹html›
‹head›
‹title›Map‹/title›
‹script src="https://cdn.rawgit.com /openlayers/openlayers.github.io/master/en/v6.1.1/build/ol.js'›‹/script›
‹link rel="stylesheet" href=""https://cdn. rawgit.com/openlayers/openlayers.github.io/master/en/v6.1.1/css/ol.css»'›
‹style›
#map {
height: 400px;
ширина: 100%;
}
‹/style›
‹/head›
‹body›
‹div id="map"›‹ /div›
‹script›
// Получить широту и долготу из строки запроса
var queryString = window.location.search;
var urlParams = new URLSearchParams(queryString) ;
var lat = urlParams.get(“lat”);
var lon = urlParams.get(“lon”);
// Создаем маркер на карте
var marker = new ol.Feature({
геометрия: new ol.geom.Point(ol.proj.fromLonLat([lon, lat]))
});
var vectorSource = new ol .source.Vector({
features: [marker]
});
var markerVectorLayer = new ol.layer.Vector({
source: vectorSource
}) ;
// Создаем карту
var map = new ol.Map({
target: 'map',
layers: [
new ol.layer.Tile ({
источник: новый ol.source.OSM()
}),
markerVectorLayer
],
вид: новый ol.View({
center: ol.proj.fromLonLat([lon, lat]),
zoom: 8
})
});
‹/script›
‹/body ›
‹/html›

В этом примере используется класс WebClient в C# для загрузки HTML-кода карты с маркером, которому в качестве параметров запроса передаются значения широты и долготы. Код HTML использует библиотеку JavaScript OpenLayers для создания карты, добавления маркера и отображения ее в веб-браузере. Карта визуализируется в браузере с использованием библиотеки OpenLayers, в качестве базовой карты используется OpenStreetMap(OSM) и добавляется маркер