0

私はsoapWebサービスにクライアントメソッドを使用しています。メソッドの1つに、string []リストとしてのパラメーターがあるので、作成します...

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>
4

1 に答える 1

0

maxOccurs="Unbounded" type="xsd:string" の型の wsdl を変更し、minOccurs="0" maxOccurs="1" type="xsd:ArrayOfString" に変更し、クライアント コードを再生成する必要がありました。そして、それはうまくいきました。提案をありがとう。

于 2013-03-05T19:52:09.590 に答える