Сериализация данных до JSON с пробелами - PullRequest
0 голосов
/ 30 марта 2020

Я пытаюсь передать данные из файла cs html в мой Javascript через атрибут data- *. Я использую такой метод

@using Newtonsoft.Json; 
@{ var list = JsonConvert.SerializeObject(Model.ListToPass); }
<div id="mainView"
     data-custom=@Html.Raw(list)>
</div>

, который теоретически работает нормально, но поскольку некоторые из моих данных имеют значения, содержащие пробел, например. «Назовите что-нибудь», мои данные фактически передаются как

<div id="mainView" 
     data-custom="[{"Id":1,"Field":"Name">
</div>

Как это сделать правильно?

1 Ответ

1 голос
/ 01 апреля 2020

Ответ согласно комментарию, подтвержденному @MeeraWeeks:
Решение :

Добавление ' апострофа к @Html.Raw(list), игнорирующему пробел в сгенерированном html.
Тег div будет:

@using Newtonsoft.Json; 
@{ var list = JsonConvert.SerializeObject(Model.ListToPass); }

<div id="mainView"
     data-custom='@Html.Raw(HttpUtility.HtmlEncode(list))'>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...