Сохраняйте объект JSON в виде строки при сериализации с помощью DataContractJsonSerializer - PullRequest
0 голосов
/ 07 сентября 2018

В настоящее время я получаю динамический ответ JSON от API, который я пытаюсь проанализировать. Пример полученного JSON выглядит следующим образом:

 {
  "data": [
    {
      "Id": "XXXXXXXXXXXXXXXXXXXXXXXX",
      "IsActive": true,
      "DateCreated": "2017-11-09T00:01:49.827Z",
      "DateModified": "2017-11-09T00:01:49.827Z",
      "IsDeleted": false,
      "Uid": "XXXXXXXXXXXXXXXXXXXXXXXX",
      "CustomObject": {
        "customdata1": " Store my customdata1 value",
        "customdata2": " Store my customdata2 value"
      }
    }
  ],
  "Count": 1
}

В приведенном выше JSON при сериализации я хочу, чтобы CustomObject отображался на строку в объекте C #. Ниже приведен пример структуры объекта, который я хочу.

[System.Runtime.Serialization.DataContract]
public class CustomObjectData
{
    [System.Runtime.Serialization.DataMember]
    public string Id { get; set; }
    [System.Runtime.Serialization.DataMember]
    public bool IsActive { get; set; }
    [System.Runtime.Serialization.DataMember]
    public string DateCreated { get; set; }
    [System.Runtime.Serialization.DataMember]
    public string DateModified { get; set; }
    [System.Runtime.Serialization.DataMember]
    public bool IsDeleted { get; set; }
    [System.Runtime.Serialization.DataMember]
    public string Uid { get; set; }
    [System.Runtime.Serialization.DataMember]
    public string CustomObject { get; set; }
}

[System.Runtime.Serialization.DataContract]
public class CustomObjectDataHolder
{
    [System.Runtime.Serialization.DataMember]
    public List<CustomObjectData> data { get; set; }
    [System.Runtime.Serialization.DataMember]
    public int Count { get; set; }
}

Я пытаюсь разработать это как плагин для CRM, поэтому я не могу использовать сторонние сериализаторы JSON, такие как NewtonSoft.

...