JSON.NET JsonConvert vs .NET JavaScriptSerializer - программирование

JSON.NET JsonConvert vs .NET JavaScriptSerializer

Что лучше использовать, когда дело доходит до кодирования и декодирования JSON в .NET? Я пробовал оба, и до этого момента JsonConvert, похоже, делает хорошую работу. Я использовал JavaScriptSerializer в прошлом успешно, но имел некоторые проблемы в недавнем прошлом с ним. Лучше ли использовать JSON.NET, чем класс .NET?

Каковы предпочтительные функции для кодирования/декодирования json с использованием соответствующей библиотеки? Я использую SerializeObject/DeSerializeObject из JSON.NET и Serialize/DeSerialize из .NET.

Спасибо

4b9b3361

Ответ 1

Я думаю, это именно то сравнение, которое вы ищете.

В основном это говорит о том, что JSON.Net лучше, потому что он среди прочего...

  • быстрее
  • Поддержка LINQ для поддержки JSON
  • Может конвертировать JSON в и из XML

По-моему, единственный положительный (и это небольшой положительный результат), я вижу, что встроенный сериализатор - это отсутствие дополнительной внешней зависимости для управления.

Изменить: Codeplex отключается в один прекрасный день, поэтому вы можете найти сравнение здесь, просто выполните поиск для "Сравнение функций" на странице.

Ответ 2

В течение очень долгого времени мое приложение использовало JavascriptSerializer и не видела никаких реальных причин для переноса. Даже если сравнение производительности требует огромных выигрышей в процентах, мы говорим миллисекунды.

Но здесь очень хорошая причина для миграции: JavascriptSerializer недоступен в .Net Core, потому что он является частью System.Web Итак, если вы используете JavascriptSerializer, вы застряли и должны перейти на JSON.net