2011-09-14 12 views
4

私は、次のコマンドを使用してthis WSDLからコードを生成しようとしています:WSDL validator svcutilはそれを読むことができませんしかしこれを有効なWSDLにするにはどうすればよいですか?

svcutil /noConfig /language:C# /out:ICatalog.cs http://schemas.opengis.net/csw/2.0.2/profiles/ebrim/1.0/wsdl/2.0/csw-ebrim-interface.wsdl 

、およびXMethodsのは、それが無効だと言います。

何が無効ですか?どうすればsvcutilにインターフェイスコードを生成させることができますか?

答えて

5

WSDLが有効かどうかはわかりませんが、実行しようとしているものは機能しません。 Svcutilは、バージョン1.1のWSDLファイルに対してのみコードを生成できます。あなたのものはWSDLバージョン2.0です。

にfaultCode = INVALID_WSDL:予想される要素 'http://schemas.xmlsoap.org/wsdl/:definitions'

、あなたの質問に指摘WSDLバリデータは、あなたのWSDLを与え、次のメッセージを返します。

ファイルをWSDL 1.1として解析します。ルートがWSDL 2.0〜descriptiondefinitions,but that changedであると想定しています。

有効なWSDL 2.0ファイルがある場合、Svcutil2がコードを生成する可能性がありますが、このツールはまだ安定していません。

WSDLを検証するには、validator from The Woden projectを使用することもできますが、どちらも安定していませんが、基本的には「おもちゃプロジェクト」ステータスを渡したことがわかっている唯一のものです。

考えてみましょう:WSDLを使用する場合、バージョン1.1はまだ「事実上」の言語です。 WSDL 2.0を採用しているWSフレームワークはほとんどありません(ちょうど2セントです)。WSDL 2.0のサポートが完全に成熟するまでは、「標準」を守る方が良いと思います。

0

参照を追加する 参照>参照の追加> COM> System.ServiceModel

関連する問題