Создаю приложение ASP.NET Core MVC 2 для отображения маркеров на карте.Я создаю Модель и Контроллер.
Модель:
public class MarkersModel
{
public string title { get; set; }
public double lat { get; set; }
public double lng { get; set; }
}
Контроллер:
public class MarkersController : Controller
{
public IActionResult Index()
{
return View("Markers");
}
public IActionResult GetMarkers()
{
//landmarks
var model1 = new MarkersModel {lat = 53.43382, lng = 14.55559, title = "Galaxy"};
var model2 = new MarkersModel { lat = 53.42800, lng = 14.55124, title = "Kaskada" };
//buildings
var model3 = new MarkersModel { lat = 53.43263, lng = 14.55436, title = "Zig-Zag" };
var model4 = new MarkersModel { lat = 53.43241, lng = 14.55568, title = "Baltica" };
//stops
var model5 = new MarkersModel {lat = 53.43269, lng = 14.54787, title = "Plac Grunwaldzki" };
var model6 = new MarkersModel { lat = 53.43186, lng = 14.55485, title = "Plac Rodła"};
//others
var model7 = new MarkersModel { lat = 53.43133, lng = 14.55519, title = "KFC" };
var model8 = new MarkersModel { lat = 53.43172, lng = 14.55384, title = "Kurczak z rożna"};
//MarkersModel.
return Json(new {model1, model2, model3, model4, model5, model6, model7, model8 });
//return Json(new { Response = model1, model2, model3, model4});
}
}
Ajax Я получаю данные от контроллера и помещаю в переменную "response":
function getData() {
//alert(data["name"]);
$.ajax({
url: '/Markers/GetMarkers', //Controller/Akcja
type: 'POST',
dataType: "json",
data: JSON.stringify(),
contentType: 'application/json; charset=utf-8',
success: function(response) {
initMap(response);
},
error: function(error) {
alert('error');
}
в функции initMap show Объект JSON console.log (данные):
function initMap(data) {
console.log(data);
var map = new google.maps.Map(
document.getElementById('map'),
{ zoom: 10, center: { lat: 53.42894, lng: 14.55302 } });
// test, do not work
var myMarkers = $.parseJSON(data);
}
Как преобразовать JSON в массив Javascript или как показать добавить маркерына карте?