代码之家  ›  专栏  ›  技术社区  ›  Pablo Fernandez

如何使用zeep生成List<String>?

  •  0
  • Pablo Fernandez  · 技术社区  · 6 年前

    zeep List<String> 在WSDL中我发现:

    <xs:element minOccurs="0" maxOccurs="1" name="IncludedLenders" type="tns:ArrayOfString"/>
    

    AraryOfString 定义为:

    <xs:complexType name="ArrayOfString">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
    

    我如何让zeep产生价值?我试过:

    "IncludedLenders": [
      "BMS",
      "BME"
    ]
    

                    <ns0:IncludedLenders>
                        <ns0:string>BMS</ns0:string>
                    </ns0:IncludedLenders>
    

    而不是:

                    <ns0:IncludedLenders>
                        <ns0:string>BMS</ns0:string>
                        <ns0:string>BME</ns0:string>
                    </ns0:IncludedLenders>
    

    有什么想法可以产生后一个?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Pablo Fernandez    6 年前

    我发现了。首先我需要提取 ArrayOfString

    array_of_string_type = client.get_type("ns1:ArrayOfString")
    

    然后按如下方式创建:

    "IncludedLenders": array_of_string_type(["BMS","BME"])