私はjson配列を持っています。要素の形式は次のようになります。
{
"CKey": "S2_123_45_20130416105655",
"TimeOfCall": "2013-04-17T06:00:00-04:00",
"DestinationNumber": "123456789",
"CallType": "X",
"CardNumber": ""
}
配列には多くの要素がありTimeOfCall(DateTime format)
ます。24 時間以内に最新の 3 つの順序のみが必要です。それらは何もないか、1、2 の場合があります。最大値は 3 です。
オリジナル 複数の辞書を使用して値を格納およびソートすることを考えましたが、複雑すぎます。
アップデート:
この json 配列は、C# コードによる json 文字列からのものです。
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(List<CallDataDTO>));
MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(response4.Content.ReadAsStringAsync().Result));
calls = (List<CallDataDTO>)ser.ReadObject(ms); // dynamic
jsonStr4 = _dynamicConvert.DynamicToString(calls);// convert dynamic to string
jsonArray4 = JArray.Parse(jsonStr4); // convert string to a json array.
更新 2:
?jsonArray4
{[
{
"CKey": "P2_123_23_20130416105655",
"TimeOfCall": "2013-04-17T06:00:00-04:00",
"DestinationNumber": "1234567890",
"CallType": "DEBIT",
"CardNumber": ""
},
{
"CKey": "P5_123_105_20130412154035",
"TimeOfCall": "2013-04-17T07:00:00-04:00",
"DestinationNumber": "1234567890",
"CallType": "DEBIT",
"CardNumber": ""
},
{
"CKey": "P5_123_114_20130412154000",
"TimeOfCall": "2013-04-07T08:00:00-04:00",
"DestinationNumber": "1234567890",
"CallType": "DEBIT",
"CardNumber": ""
}
]}
base {Newtonsoft.Json.Linq.JContainer}: {[
{
"CKey": "P2_123_23_20130416105655",
"TimeOfCall": "2013-04-17T06:00:00-04:00",
"DestinationNumber": "1234567890",
"CallType": "DEBIT",
"CardNumber": ""
},
{
"CKey": "P5_123_105_20130412154035",
"TimeOfCall": "2013-04-17T07:00:00-04:00",
"DestinationNumber": "1234567890",
"CallType": "DEBIT",
"CardNumber": ""
},
{
"CKey": "P5_123_114_20130412154000",
"TimeOfCall": "2013-04-07T08:00:00-04:00",
"DestinationNumber": "1234567890",
"CallType": "DEBIT",
"CardNumber": ""
}
]}
Type: Array