XML数组序列化

本文关键字:序列化 数组 XML | 更新日期: 2023-09-27 18:02:35

我正在为soap web服务使用客户机方法。其中一个方法有一个参数string[] list,所以我创建…

string[] myList = { "12345678" };

和我通过客户端方法发送请求,但我得到一个错误说SAXException在反序列化时在数组元素内发现字符数据。我知道客户端方法在信封内发送这个。

<List>12345678</List>

应该是这样的…

<List><string>12345678</string></List>

我尝试了以下方法,但仍然没有得到我需要的结果。

[XmlArrayItem("m")]
public string[] list
{
   get; set;
}
我这样做是为了使用上面的类,
string[] a = new string[] { "12345678" };
list = a;

,结果是一样的,

<List>12345678</List>

XML数组序列化

我必须修改wsdl的类型maxOccurs="Unbounded" type="xsd:string",我将其更改为minOccurs="0" maxOccurs="1" type="xsd:ArrayOfString",并重新生成客户端代码。这招奏效了。谢谢你的建议。