有點長第三方自動之一,但是,比第一稿:)使用Web服務 - 從手工法打算使用提供WSDL
短,我們有一個小VB.net應用程序,基本上提取信息從我們的dBase中導出,然後將此信息導出到.xls文件。從這個.xls文件中,內部代理商然後手動更新第三方列表服務(維護我們當前的庫存)與其中包含的信息。這些信息非常基本,爲便於討論,包括「零件號」,「說明」和「現有數量」。
通常我們每週更新此信息一次,但是,與此房源服務新修訂的合同,現在需要一個每日更新,以保持我們的「白金」供應商的地位。
問題是手動更新此信息可能需要一段時間。因此,迫切需要一個自動化過程。我完成了大部分的基礎工作和編碼 - 達到了某個程度。因此,這個問題,因此我卡住了。
上市服務爲我們提供了下面的WSDL的:一個用於增加我們的庫存,一爲降低我們的庫存,一個用於增加庫存,一個用於去除庫存。
到現在爲止,我已經重新編程的存儲過程中產生的導出的信息。這個SP現在做一些內部的數學計算,以確定'昨天'發生的交易結果是'增加','減少','添加'還是'刪除'。然後將這些結果添加到名爲「SERVICE」的新創建列下的結果表中。然後用vb.net從dBase中提取這些新信息並導入到數據表中進行分析。
與此數據表,我現在可以遍歷每一行,看在列的「服務」,並根據包含在該單元中的信息,調用相應的Web服務。
我已經加入所有的Web引用到我的項目,創造了代理類每個Web服務。
第二個問題是,我不知道如何實際調用實際的Web服務。以下是代碼
' loads data into the 'AviationDataBaseResult.ILS_ARRAY_2' table.
Me.ILS_ARRAY_2TableAdapter.Fill(Me.AviationDataBaseResult.ILS_ARRAY_2)
' Start the looping process
For Looper = 0 To RowCount - 1
If Me.AviationDataBaseResult.ILS_ARRAY_2.Rows(Looper).Item("Service") = _
"Increase" Then
' Call Appropriate Web service
End If
' More If..Then's ensue, one for each service
Next
' More code ensues
的小片段我意識到,這已成爲不少長篇大論,主要是因爲在任何給定的一天,我有25個FF選項卡中打開,其中沒有相互同意。添加另一個皺紋;所討論的WSDL在複雜類型中使用了很多複雜類型,而你猜對了,其他複雜類型交織在一起。我已經瀏覽了很多例子,還沒有找到一個處理複雜類型以及如何處理它們的例子。非常感謝任何幫助指引我在'去哪裏找到我需要知道'的正確方向。
如果需要任何其他信息,我會很樂意爲您提供儘可能多的,因爲我可以更多。如果我的思維過程和邏輯不適合做我需要做的事,我很樂意聽到這一點。對vb.net來說相對較新,我已經變得非常善於消費謙虛派。
謝謝你的時間。