JSON.NET JsonConvert vs .NET JavaScriptSerializer
Что лучше использовать, когда дело доходит до кодирования и декодирования JSON в .NET? Я пробовал оба, и до этого момента JsonConvert, похоже, делает хорошую работу. Я использовал JavaScriptSerializer в прошлом успешно, но имел некоторые проблемы в недавнем прошлом с ним. Лучше ли использовать JSON.NET, чем класс .NET?
Каковы предпочтительные функции для кодирования/декодирования json с использованием соответствующей библиотеки? Я использую SerializeObject/DeSerializeObject из JSON.NET и Serialize/DeSerialize из .NET.
Спасибо
Ответы
Ответ 1
Я думаю, это именно то сравнение, которое вы ищете.
В основном это говорит о том, что JSON.Net лучше, потому что он среди прочего...
- быстрее
- Поддержка LINQ для поддержки JSON
- Может конвертировать JSON в и из XML
По-моему, единственный положительный (и это небольшой положительный результат), я вижу, что встроенный сериализатор - это отсутствие дополнительной внешней зависимости для управления.
Изменить: Codeplex отключается в один прекрасный день, поэтому вы можете найти сравнение здесь, просто выполните поиск для "Сравнение функций" на странице.
Ответ 2
В течение очень долгого времени мое приложение использовало JavascriptSerializer
и не видела никаких реальных причин для переноса. Даже если сравнение производительности требует огромных выигрышей в процентах, мы говорим миллисекунды.
Но здесь очень хорошая причина для миграции: JavascriptSerializer
недоступен в .Net Core
, потому что он является частью System.Web
Итак, если вы используете JavascriptSerializer
, вы застряли и должны перейти на JSON.net