Jsonix 元素和值限制

Jsonix Element and value restriction

我正在使用 JSONIX 对从其他系统收到的 XML 进行编组和解组。 XML 我要编组和解组

<charge> 392.2361
<formatted>392.24</formatted>
</charge>

我仍然不知道如何解组值“392.2361”。任何人有任何想法?提前致谢

这里需要的是 mixed property.

{
    type: 'classInfo',
    localName: 'MyType',
    propertyInfos: [{
        type: 'elementRef',
        name: 'charge',
        elementName: 'formatted',
        collection : true,
        mixed: true
    }]
}

您将获得的价值如下:

[ '392.2361', { name: { localPart: 'formatted' }, value: '392.24' }]

未经测试,无法保证,但您明白了。

终于应用到位了。谢谢#lexicore

这是我对混合 属性

的实现
{
     type: 'classInfo',
     localName: 'ItemizedForDateType', //<date>
     propertyInfos:[
            {
                type: 'element',
                name: 'priceTextType',
                elementName: 'price',
                typeInfo: 'DOTWXML.PriceFormattedType'
            },
            {
                type: 'element',
                name: 'priceMinSellTextType',
                elementName: 'priceMinimumSelling',
                typeInfo: 'DOTWXML.PriceFormattedType'
            }
    ]
},
{
     type: 'classInfo',
     localName: 'PriceFormattedType',                           
     propertyInfos:[
        {
            type: 'elementRef',
            name: 'charge',
            elementName: 'formatted',
            collection : true,
            mixed: true
        },
     ]
}

解组的结果如下所示:

    "itemizedForDateType": [
      {
        "TYPE_NAME": "DOTWXML.ItemizedForDateType",
        "priceTextType": {
          "TYPE_NAME": "DOTWXML.PriceFormattedType",
          "charge": [
            "236.8738",
            {
              "name": {
                "namespaceURI": "",
                "localPart": "formatted",
                "prefix": "",
                "key": "formatted",
                "string": "formatted"
              },
              "value": "236.87"
            }
          ]
        }
      }
    ]

我在删除“collection : true”时犯了一个错误,并且在解组后得到“{}”。一旦我意识到“collection : true”是required,就把它放在上下文中,一切都正确解组。