2011-08-04 15 views
1

私はまだ答えが見つからないという特定の問題があります。基本的には、関数の中に数値のリストを渡して数学を行い、それらを返す必要があります。一度に問題のない数値を渡すことができますが、配列を渡したいときに問題が発生します。VB.netでSOAP Webサービスを構築して配列を受信する

私のVB.netコードは次のようになります...

<WebMethod()> _ 
Public Function ArrayTest(test As Double) As Double() 
    Return test 
End Function 

私は私のSOAPクライアントとしてSUDSではPythonを使用して、この反対テストしています。ここではXML

<?xml version="1.0" encoding="UTF-8"?> 
<SOAP-ENV:Envelope 
    xmlns:ns0="http://tempuri.org/" 
    xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> 
    <SOAP-ENV:Header/> 
    <ns1:Body> 
     <ns0:ArrayTest> 
     <ns0:test>603</ns0:test> 
     <ns0:test>603</ns0:test> 
     <ns0:test>607</ns0:test> 
     <ns0:test>609</ns0:test> 
     </ns0:ArrayTest> 
    </ns1:Body> 
</SOAP-ENV:Envelope> 

は、私はコード内のブレークポイントを設定し、テスト変数の入力値を見て、配列のサイズは常にゼロのままです。私はParamArray、List、その他いくつかのことを試しましたが、私は運がないです。もちろん、入力を配列に指定しないと、SOAPリクエストから渡された最初の項目が返され、返されますが、すべての項目を戻したいと思います。

ここに実装しようとしたものがあります。私はそれが何かシンプルであると確信しています。私は一般的にプログラミングするのが初めてです。あなたのコードによるとRelated link

答えて

2

Public Function ArrayTest(test As Double) As Double() 

ArrayTestDouble recieves、およびDoubleの配列を返します。あなたの署名を変更する必要がありますか? また、リンクからあなたを提供してきました:

Public Function GetObjectValues(ByVal objIds As List(Of String), ByVal objProperty As String) As List(Of String) 

ルックobjIdsパラメータで - ListArrayの代替バリアントです。

関連する問題