Qjson を使用して、Web サービスから返された json オブジェクトを解析しています。複雑なオブジェクトの配列を処理することに行き詰まっています。
最初のレベルでは、Web サービスは "error"、"id"、および "return" で構成されるマップを返します。エラーがない場合は、次を使用して最初のレベルの値を取得できます
nestedMap = m_jsonObject["result"].toMap();
group = new Group();
group->Caption = nestedMap["Caption"].toString();
group->CollectionCount = nestedMap["CollectionCount"].toInt();
を使用して、第 2 レベルの日付項目値を取得することもできます
group->ModifiedOn = nestedMap["ModifiedOn"].toMap()["Value"].toDateTime();
29 個のキーと値のペアで構成される「Elements」というオブジェクトがあります。Web サービスはこれらの「要素」の配列を返していますが、それを解析する正しい方法を見つけることができません。ヘッダー ファイルでは、要素のコンテナーは次のように定義されます。
QList<GroupElement> Elements;
この線
group->Elements = nestedMap["Elements"].toList();
コンパイラがエラー「エラー: 'operator=' が '((MyClass*)this)->MyClass::group->Group::Elements = QVariant::toMap() const()' に一致しません」をスローします。
この要素をクラスに入れるための正しい構文を学びたいです。