Доступ к объекту C # в сценарии Javascript - PullRequest
0 голосов
/ 15 февраля 2019

Я работаю в проекте C #.По моему мнению, мне нужно работать со сценарием (в Javascript), предоставленным моим учителем.Прежде всего, мой взгляд получить список.Например: [location1, location2, location3].Местоположение имеет параметры широты и долготы.В моем Javascript у меня есть функция "L.marker ([x, y]). AddTo (mapa) .on ('click', onClick);".Я хочу передать location1.longitude и location1.latitude в качестве параметров функции маркера.Как я могу это сделать?

@model List<SistemaGestion.Helpers.JsonApiGoogle.Location>

(some HTML code)

<script>
(code)
       for (var coordenadas in Model) {
            L.marker([coordenadas.latitude, coordenadas.longitude]).addTo(mapa).on('click', onClick);
        }
</script>

1 Ответ

0 голосов
/ 15 февраля 2019

Вот простой пример того, как сериализовать в JSON.Я заменяю ваш Список объектов простым списком строк просто для простоты.Но он должен работать практически с любой структурой данных (с некоторыми оговорками, например, с рекурсивным вложением)

@using System.Collections.Generic
@using Newtonsoft.Json
@model List<string>

@{ // this is running server-side
    var json = JsonConvert.SerializeObject(Model); 
}

<script> // this will run client-side, 
    //but the @Html.Raw(json) will be "injecting" into the client side script.
    var array = @Html.Raw(json); 
    console.log(array);
</script>

Html.Raw важен, в противном случае он будет экранирован «как» и тому подобное.

Как это выглядит, если вы просматриваете источник в браузере:

var array = ["hello","world","this","is","a","test"];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...