私はWebサービスを利用していますが、これはwsdlからのものです。
<xs:complexType name="Person">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="PersonAddresses" type="ns:PersonAddress" />
</xs:sequence>
</xs:complexType>
xsdから:
<!--Complex Type for PersonAddress-->
<xs:complexType name="PersonAddress">
<xs:sequence>
<xs:element name="Address" type="Address" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<!--Complex Type for Address-->
<xs:complexType name="Address">
<xs:sequence>
<xs:element name="Addr1" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="Addr2" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="City" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="State" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="Zip" type="xs:string" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
生成されたプロキシを使用して、PersonAddressのコレクションを作成し、それにAddressオブジェクトを追加します。
...
var convertedAddresses = new PersonAddress[addressesToCounvert.Count];
for (int i = 0; i < addresses.Count; i++)
{
convertedAddresses[i] = ConvertAddress(addresses[i]);
}
person.PersonAddresses = convertedAddresses;
...
リクエストを送信すると、次のようになります
<PersonAddress>
<Address>
...
</Address>
</PersonAddress>
<PersonAddress>
<Address>
...
</Address>
</PersonAddress>
だから私は何を間違っているのですか..必要な形式は
<PersonAddress>
<Address>
...
</Address>
<Address>
...
</Address>
</PersonAddress>
ご入力いただきありがとうございます