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); 
  • Дессериализация данных JSON на C # с использованием JSON.NET
  • Разбор большого json-файла в .NET.
  • Преобразование int для bool с Json.Net
  • Как реализовать пользовательский JsonConverter в JSON.NET для десериализации списка объектов базового classа?
  • Удаление десериализации JSON в .NET-объект с использованием Newtonsoft (или LINQ to JSON, возможно?)
  • Можно ли указать путь в атрибуте для сопоставления свойства в моем classе с дочерним свойством в моем JSON?
  • Json.NET: десериализация вложенных словарей
  • Уничтожить XML-объект с помощью динамического
  • Дезаминирование гетерогенного массива JSON в ковариантный список с использованием JSON.NET
  • Полиморфизм в аннотациях jacksonа: использование @JsonTypeInfo
  • Давайте будем гением компьютера.