Получение ошибки при выполнении Newtonsoft JSON Deserialize для строк апострофа в C # - PullRequest
0 голосов
/ 27 ноября 2018

Я получаю исключение ниже, когда пытаюсь выполнить код ниже фрагмента при выполнении десантной JSON-программы Newtonsoft.Ошибка: после анализа значения обнаружен неожиданный символ: s.Путь «Имя», строка 1, позиция 14.

static void Main(string[] args)
{
   var definition = new { Name = "" };
   string json1 = @"{'Name':'Jame's'}";
   var customer1 = JsonConvert.DeserializeAnonymousType(json1, definition);
   Console.WriteLine(customer1.Name);
}

Ответы [ 2 ]

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

сообщение: после анализа значения обнаружен неожиданный символ: s.Путь 'Имя', строка 1, позиция 14.

неверный формат строки:)

изменить так

    static void Main(string[] args)
    {
        var definition = new { Name = "" };
        string json1 = "{\"Name\":\"Jame's\"}";
        var customer1 = JsonConvert.DeserializeAnonymousType(json1, definition);
        Console.WriteLine(customer1.Name);
    }
0 голосов
/ 27 ноября 2018

Это одиночная кавычка, а не апостроф, поэтому ее необходимо экранировать:

string json1 = @"{'Name':'Jame\'s'}";

Вы не можете включить разделитель строк внутри строки, не выходя из нее.

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