1

我已經給出了一個WSDL,其中包含所有方法請求和響應以及所有需要用於創建幾個Web方法的對象。通過WSDL向Visual Studio添加服務引用時出錯

我已經成功地將WSDL添加爲「服務引用」,我可以看到方法和結構並可以實例化它們。這一切似乎都在那裏。但是,我遇到了一個問題:在添加WSDL之後,該項目無法生成。

「錯誤2類型名稱‘ServiceReference1’中不存在類型 ‘WSPELab.WSPELab’C:\用戶\ JJ \文件時,Visual Studio中試圖編譯Reference.cs下面是我收到錯誤信息\的Visual Studio 2008 \項目\ WSPELab \ WSPELab \服務 參考\ ServiceReference1 \ Reference.cs 21 111 WSPELabSLN

難道我接受了,因爲我的一個命名空間的錯誤此錯誤消息?

最後還有一個問題:添加了WSDL後,我可以直接使用它包含的結構嗎?或者他們只是「列表」我執行?

+0

可能相關:[從客戶端訪問WCF服務時出錯](http://stackoverflow.com/q/31357502/1497596) – DavidRR 2015-11-10 13:25:23

回答

3

WSDL是一個機器可讀的文件,描述Web服務公開的方法和類型。許多IDE(包括Eclipse和Visual Studio)都可以導入這些並創建與WSDL中給出的定義相匹配的編程語言類。

例如,在Visual Studio C#項目中導入WSDL將創建一個包含這些定義的Reference.cs文件。你必須實例化和調用這些定義,就像你爲任何類一樣。

var webServiceReference = new WsdlNamespace.ClassDefinedInWsdl(); 
WsdlNamespace.ParamClassDefinedInWsdl dataToGet; 
WsdlNamespace.ReturnCodeTypeDefinedInWsdl retCode = webServiceReference.MethodDefinedInWsdl("params expected by method", out dataToGet); 
if (retCode == WsdlNamespace.ReturnCodeValueMeaningAllIsWell) 
{ 
    // use properties of dataToGet 
} 

提供更多的細節需要向我們展示實際的WSDL。

+0

謝謝!我正朝着正確的方向前進,但有一些奇怪的命名空間錯誤。 我開始了一個新項目並添加了參考,現在我可以使用所有現有的類。 再次感謝! – Johnny 2010-06-17 10:23:35

相關問題