JSON возвращается из JsonConvert.SerializeObject (obj) returnserro "Неожиданный токен &" в Json.parse - PullRequest
0 голосов
/ 26 ноября 2018
model.DepartmentsList = list;
model.DepartmentsListJson = JsonConvert.SerializeObject(model.DepartmentsList); 

возвращает это JSON:

"[{\" DeptNo \ ": \" d006 \ ", \" DeptName \ ": \" Production \ ", \"FromDate \ ": нулевой, \" ToDate \ ": нулевой}, {\" DeptNo \ ": \" d007 \ "\ "DEPTNAME \": \ "Sales \", \ "FromDate \": нулевой, \"ToDate \ ": null}, {\" DeptNo \ ": \" d009 \ ", \" DeptName \ ": \" Служба поддержки клиентов \ ", \" FromDate \ ": null, \" ToDate \ ": null},{\ "DeptNo \": \ "D021 \", \ "DEPTNAME \": \ "DEV \", \ "FromDate \": нулевой, \ "ToDate \": нулевой}, {\ "DeptNo \": \"d022 \", \ "DeptName \": \ "Human Resources 5 \", \ "FromDate \": null, \ "ToDate \": null}, {\ "DeptNo \": \ "d023 \", \"DeptName \": \ "Human Resources 6 \", \ "FromDate \": null, \ "ToDate \": null}, {\ "DeptNo \": \ "d024 \", \ "DeptName \": \"Human Resources 7 \", \ "FromDate \": null, \ "ToDate \": null}] "

(игнорировать нулевые значения).И когда я пытаюсь разобрать его в javascript

var departmentsList = JSON.parse(@Model.DepartmentsListJson); 

, я получил следующее сообщение:

Uncaught SyntaxError: Unexpected token &

Что я должен использовать, чтобы вернуть действительную строку JSON из моего C# код?

1 Ответ

0 голосов
/ 26 ноября 2018

Вы пробовали это:

var departmentsList = JSON.parse(@Html.Raw(@Model.DepartmentsListJson)); 

Проблема в том, что вы смешиваете c # с бритвой и javaScript.Поэтому, когда вы делаете это:

var departmentsList = JSON.parse(@Model.DepartmentsListJson);

Если я не ошибаюсь, вы обращаетесь к объекту в c #, а не к фактическому значению, которое он содержит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...