2010-07-22 39 views
3

我必須在我的.net應用程序中集成幾個現有的web服務。但不幸的是,調用與消息的錯誤的SvcUtil工具工具結果:svcutil.exe - 錯誤:無法導入wsdl:portType

微軟(R)服務模型元數據工具 [微軟(R)的Windows(R)通信基礎版本3.0.4506.2152] 版權所有(C)微軟公司。版權所有。

錯誤:無法導入WSDL:結合 詳細信息:無法找到http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/V1.0:EnviarRespuestaVerifi carIdentidadCliente定義。服務描述與命名空間http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/V1.0 缺失。 參數名:名 的XPath錯誤源:// WSDL:定義[@的targetNamespace = 'http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/E nlace/V1.0 ']/WSDL:結合[@名稱=' EnviarRespuestaVerificarIdentidadCliente_HttpBinding']

錯誤:無法導入wsdl:port 詳細信息:導入wsdl:port所依賴的wsdl:binding時發生錯誤。 XPath來的wsdl:結合:// WSDL:定義[@的targetNamespace = 'http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/E nlace/V1.0 ']/WSDL:結合[@名稱=' EnviarRespuestaVerificarIdentidadCliente_HttpBinding'] XPath來錯誤源:// WSDL:定義[ @的targetNamespace = 'http://grupobancolombia.com/intf/Clientes/GestionClientes/EnviarRespuestaVerificarIdentidadCliente/E nlace/V1.0 ']/WSDL:服務[@名稱=' EnviarRespuestaVerificarIdentidadCliente ']/WSDL:端口[@名稱=' EnviarRespuestaVerificarIdentidadCliente_HttpPort']

生成文件... 警告:無代碼已生成。 如果您嘗試生成客戶端,這可能是因爲元數據文檔不包含任何有效合同或服務 或者因爲發現所有合同/服務都存在於/ reference組件中。驗證您是否已將所有元數據文檔傳遞給該工具。

警告:如果您想從模式生成數據合約,請確保使用/ dataContractOnly選項。 有沒有人知道是什麼原因導致了這個問題?

回答

2

我看到相同的問題。我在一個文件夾中有一組30多個wsdl文件,並試圖爲它們創建C#客戶端類。

如果我下面

svcutil /noconfig /namespace:*,My.Required.Namespace *.wsdl 

我看到了很多你所提到的錯誤(無法導入WSDL:綁定)。

然而,在時間

svcutil /noconfig /namespace:*,My.Required.Namespace a.wsdl 

工作經常採摘一個文件;有時我必須包含另一個文件,例如

svcutil /noconfig /namespace:*,My.Required.Namespace b.wsdl c.wsdl 

試圖運行b.wsdl SvcUtil工具時,這是必要的失敗,因爲在c.wsdl的依賴。

底線:我不確定爲什麼我無法一次爲所有這些服務定義創建合同,但似乎不可能。對於文件中的共享類型,我仍然有一個很大的問題;這意味着我必須有效地編輯第三方wsdl或自動生成的代碼才能正確編譯和運行。

+0

+1:正是我需要的,謝謝你。 – 2010-11-05 10:06:54