Json.NET Отключить десериализацию в DateTime

Вот код:

string s = "2012-08-08T01:54:45.3042880+00:00"; JObject j1 = JObject.FromObject(new { time=s }); Object o = j1["time"]; 

Мы можем проверить, что o – строка и равно “2012-08-08T01: 54: 45.3042880 + 00: 00”

Теперь мы передаем j1.ToString () в другую программу, которая

  { "time": "2012-08-08T01:54:45.3042880+00:00" } 

затем в другой программе попробуйте выполнить ее повторную проверку в JObject,

  JObject j2 = JObject.Parse(j1.ToString()); Object o2 = j2["time"]; 

Теперь, если мы проверим o2, тип o2 – Date, o2.ToString () – 8/7/2012 9:54:45 PM.

Мой вопрос:

Есть ли способ отключить десериализацию даты для JObject.Parse и просто получить необработанную строку?

заранее спасибо

При анализе с object на JObject вы можете указать JsonSerializer который инструктирует, как обрабатывать даты.

 JObject.FromObject(new { time = s }, new JsonSerializer { DateParseHandling = DateParseHandling.None }); 

К сожалению, у Parse этот вариант отсутствует, хотя иметь смысл иметь его. Рассматривая источник для Parse мы видим, что все, что он делает, представляет собой экземпляр JsonReader а затем передает его на Load . JsonReader есть варианты parsingа.

Вы можете достичь желаемого результата следующим образом:

  JsonReader reader = new JsonTextReader(new StringReader(j1.ToString())); reader.DateParseHandling = DateParseHandling.None; JObject o = JObject.Load(reader); 
  • Преобразование int для bool с Json.Net
  • Дезаминирование гетерогенного массива JSON в ковариантный список с использованием JSON.NET
  • Разбор большого json-файла в .NET.
  • JSON для экземпляра classа TypeScript?
  • Десериализация JSON с использованием JSon.NET с динамическими данными
  • Как сериализовать объект, который включает BufferedImages
  • Сериализация - readObject writeObject переопределяет
  • Библиотека Jackson JSON: как создать экземпляр classа, содержащего абстрактные поля
  • Отключить JSON в существующий объект (Java)
  • Уничтожить XML-объект с помощью динамического
  • Interesting Posts

    Как получить имя Android AVD от имени устройства adb

    JSON.net: как десериализовать без использования конструктора по умолчанию?

    Должны ли вы когда-либо использовать защищенные переменные-члены?

    Что делает «дружественный URL»?

    Получить последнее вставленное значение из базы данных sqlite Android

    Захват выходного значения из команды оболочки в VBA?

    CSS-разрыв страницы не работает во всех браузерах

    Ожидание нескольких задач с разными результатами

    Регулярное выражение для ограничения количества символов до 10

    Как я могу остановить Excel от употребления моих вкусных файлов CSV и извлечения бесполезных данных?

    Как перечислить файлы рекурсивно и отсортировать их по времени модификации?

    Как определить class объекта?

    Преобразование файла в PDF с помощью LibreOffice под пользователем apache (т.е. при использовании PHP)

    Как разбить завернутый числовой список на несколько строк?

    Возможно ли писать файлы Ysams / Ansible hosts / inventory?

    Давайте будем гением компьютера.