2010-06-21 39 views
0

我正在構建契約優先的SOAP客戶端。當我嘗試使用svcutil生成代理類時,我收到下面列出的錯誤消息,並且沒有生成類。一些錯誤信息是荷蘭語,但它們與this question on MSDN中的錯誤類似。這個問題的海報提供了以下解決方案:使用svcutil生成代理時出錯

[...] WCF Publishing wizard does not like multiple includes (t be precise - more than 3). SO I reduced my Schema includes to zero [...]

由於我沒有在WSDL的和XSD的控制,而且因爲有許多,他們是大,減少了架構包括會造成嚴重的維修問題。 所以在我嘗試這個之前,我想知道這是不是真的是什麼原因造成的問題。我無法找到此確認。

有沒有人聽說過這是導致問題的原因?我還有其他的事情可以嘗試嗎?

wsdlrelated files在線提供。 據我所知,他們都是有效的。

我試圖用參數/ dcOnly和/ ser:XmlSerializer運行svcutil,但沒有幫助。我也嘗試將這套操作減少到我所需要的,但這也沒有幫助。

謝謝,米爾。

Error: Er is een validatiefout opgetreden op een schema dat tijdens het exporteren werd gegenereerd: Bron: Regel: 17518 Kolom: 6 Validatiefout: Het attribuut groepsnaam wordt genegeerd omdat de waarde 'prohibited' (verboden) voor attribuutgebruik er alleen voor zorgt dat het overnemen van een identieke attribuutnaam uit de basistypedefinitie wordt verhinderd.

Error: Er is een validatiefout opgetreden op een schema dat tijdens het exporteren werd gegenereerd: Bron: Regel: 17519 Kolom: 6 Validatiefout: Het attribuut elementnaam wordt genegeerd omdat de waarde 'prohibited' (verboden) voor attribuutgebruik er alleen voor zorgt dat het overnemen van een identieke attribuutnaam uit de basistypedefinitie wordt verhinderd.

Error: Kan wsdl:portType niet importeren Detail: Er is een uitzondering opgetreden tijdens het uitvoeren van een WSDL-importextensie: System.ServiceModel.Description.XmlSerializerMessageContractImporter Fout: Kan geen ongeldige schema's importeren. Compilatie op de XmlSchemaSet is mislukt. XPad naar foutbron: //wsdl:definitions[@targetNamespace=' http://www.egem.nl/StUF/sector/zkn/0310 ']/wsdl:portType[@name='BeantwoordVraag']

Error: Kan wsdl:binding niet importeren Detail: Er is een fout opgetreden bij het importeren van een wsdl:portType waar de wsdl:binding van afhankelijk is. XPad naar wsdl:portType: //wsdl:definitions[@targetNamespace=' http://www.egem.nl/StUF/sector/zkn/0310 ']/wsdl:portType[@name='BeantwoordVraag'] XPad naar foutbron: //wsdl:definitions[@targetNamespace=' http://www.egem.nl/StUF/sector/zkn/0310 ']/wsdl:binding[@name='SOAPBeantwoordVraag']

Error: Kan wsdl:port niet importeren Detail: Er is een fout opgetreden bij het importeren van een wsdl:binding waar de wsdl:port van afhankelijk is. XPad naar wsdl:binding: //wsdl:definitions[@targetNamespace=' http://www.egem.nl/StUF/sector/zkn/0310 ']/wsdl:binding[@name='SOAPBeantwoordVraag'] XPad naar foutbron: //wsdl:definitions[@targetNamespace=' http://www.egem.nl/StUF/sector/zkn/0310 ']/wsdl:service[@name='BeantwoordVraag']/wsdl:port[@name='BeantwoordVraag']

Generating files... Warning: No code was generated. If you were trying to generate a client, this could be because the metadata documents did not contain any valid contracts or services or because all contracts/services were discovered to exist in /reference assemblies. Verify that you passed all the metadata documents to the tool.

Warning: If you would like to generate data contracts from schemas make sure to use the /dataContractOnly option.

回答

0

有人告訴我,svcutil.exe和wsdl.exe不能很好地處理wsdl中定義的故障消息。

我刪除這些後,svcutil確實生成代理。

所以,至少在這種情況下,問題不是多重包含,而是錯誤消息。現在我需要找出現在缺失的故障消息的解決方法。

我會盡力讓這個答案更新。

相關問題