C# 如何在WSDL中定义自定义类型数组?
我对WSDL非常陌生,但我尝试做的很简单。我已经得到了一个使用python的ZSI库的web服务,但是我一直在定义一个返回自定义类型数组的服务 在我的WSDL中,我有以下内容:C# 如何在WSDL中定义自定义类型数组?,c#,python,web-services,soap,wsdl,C#,Python,Web Services,Soap,Wsdl,我对WSDL非常陌生,但我尝试做的很简单。我已经得到了一个使用python的ZSI库的web服务,但是我一直在定义一个返回自定义类型数组的服务 在我的WSDL中,我有以下内容: <xsd:element name="ArtPiece"> <xsd:complexType> <xsd:sequence> <xsd:element name="title" type="xsd:string" /> &
<xsd:element name="ArtPiece">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="title" type="xsd:string" />
<xsd:element name="year" type="xsd:string" />
<xsd:element name="imageId" type="xsd:int" minOccurs="0" />
<xsd:element name="image" type="xsd:base64Binary" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
如果我尝试添加另一个元素,比如ArtPieceArray,它是由无限数量的ArtPiece类型定义的,这似乎是无效的
如果在定义我的消息时,我尝试使用ArtPiece[],这似乎也是无效的
我将ZSI用于web服务,而C#用于客户端。客户端web服务代码由wsdl.exe生成
有什么建议吗?
<xs:schema elementFormDefault="qualified"
targetNamespace="http://schemas.datacontract.org/2004/07/Foo"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://schemas.datacontract.org/2004/07/Foo">
<xs:complexType name="ArtPiece">
<xs:sequence>
<xs:element minOccurs="0" name="image" nillable="true" type="xs:base64Binary"/>
<xs:element minOccurs="0" name="imageId" type="xs:int"/>
<xs:element minOccurs="0" name="title" nillable="true" type="xs:string"/>
<xs:element minOccurs="0" name="year" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="ArtPiece" nillable="true" type="tns:ArtPiece"/>
<xs:complexType name="ArrayOfArtPiece">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="ArtPiece" nillable="true" type="tns:ArtPiece"/>
</xs:sequence>
</xs:complexType>
<xs:element name="ArrayOfArtPiece" nillable="true" type="tns:ArrayOfArtPiece"/>
</xs:schema>