2

私は、.NET フロントエンドが Java バックエンドと通信するプロジェクトに参加しています。wdsl の + xsd を使用して、フロントエンドとバックエンドの間のインターフェイスを記述します。私は .NET 4.0 のフロントエンド側にいます。以前は xsd.exe と wsdl.exe でインターフェイスのコードを生成していましたが、WCF に切り替えたいので、svcutil.exe を使用しようとしています。ただし、エラーが発生し続けます。使用されているステートメントまで追跡した<import>ので、w3 サイトの例を試してみました: W3.org サイトのインポートの例

これら 3 つのサンプル ファイルを StockQuoteService.wsdl、StockQuote.wsdl、StockQuote.xsd として保存し、これらのファイルに場所属性を設定しました。バグを修正しました (StockQuoteService.wdsl では、Binding は StockQuoteBinding ではなく StockQuoteSoapBinding である必要があります)。次に、次のように svcutil を実行します。

svcutil StockQuoteService.wsdl *.xsd /serializer:XmlSerializer

さきほど、xsd/wsdl の場合とまったく同じエラーが発生します。

エラー: wsdl:binding 詳細をインポートできません: http://example.com/stockquote/definitions:StockQuotePortTypeの定義が見つかりません。名前空間http://example.com/stockquote/definitionsの Service Descriptionがありません。パラメータ名: name エラー ソースへの XPath: //wsdl:definitions[@targetNamespace=' http://example.com/stockquote/service ']/wsdl:binding[@name='StockQuoteSoapBinding']

StockQuotePortType は、StockQuoteService.wsdl に含まれる StockQuote.wsdl にありますが、scvutil では見つからないようです。私たち自身のファイルでも、同様の状況があります。

私はWCFを初めて使用しますが、ここで何が起こっているのか説明できますか?

4

0 に答える 0