비슷한 항목 목록을 배열의 구성원 대신 다른 개체로 제공하는 API가 있습니다. 상점에서 사용 가능한 항목이 포함 된 _items 노드를 보겠습니다 .
{
"_ok":200,
"_store":
{
"location":"Rome",
"open":true
},
"_items":
{
"itemA":{ "color":"blue","size":3},
"itemB":{ "color":"red","size":1},
"itemC":{ "color":"cyan","size":3},
"itemD":{ "color":"yellow","size":0},
}
}
매우 멋진 Newtonsoft JSON.NET을 사용하여 역 직렬화를 수행하고 있지만 항목 목록을 어떻게 얻을 수 있는지 모르겠습니다. 목록은 배열이었습니다.
"_items":{["itemA":{ "color":"blue","size":3},"itemB":...
JsonConvert를 사용하여 쉽게 얻을 수 있었을 것입니다.
List<Item>
여기서 Item은 색상 및 크기 멤버가있는 클래스입니다.
. 안타깝게도 API를 변경할 수 없습니다. 감사.
를 사용 JsonExtensionDataAttribute
하여 항목을 저장하고 속성을 사용하여 항목을 Item
인스턴스 로 변환 할 수 있습니다.
[JsonProperty("_items")]
private ItemsContainer _items;
[JsonObject(MemberSerialization.OptIn)]
class ItemsContainer
{
[JsonExtensionData]
private IDictionary<string, JToken> _items;
public IEnumerable<Item> Items
{
get
{
return _items.Values.Select(i => i.ToObject<Item>());
}
}
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다