В настоящее время я получаю динамический ответ 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.
public string CustomObject { get; set; }
, как только вы его получите? - person dbc   schedule 08.09.2018CustomObject
может быть представлен какDictionary<string, string>
. Если это так, и вы используете .NET 4.5 или более позднюю версию, вы можете десериализовать"CustomObject"
с помощьюDataContractJsonSerializerSettings.UseSimpleDictionaryFormat
, как показано в любым способом. чтобы заставить DataContractJsonSerializer правильно сериализовать словари? и сериализовать строку Dictionary‹string› в определенном формате. - person dbc   schedule 08.09.2018