1

同じマシンで VS2010 の 2 つのインスタンスを実行しています。1 つの VS インスタンスには、basicHttpBinding を使用する WCF サービスがあります。本で読んだように、この WCF サービスを basicHttpBinding で呼び出すには、サービス参照ではなく Web 参照を追加する必要があります。私はWCFサービスを含むプロジェクトを実行し、他のVSインスタンスからWeb参照を追加しようとしました.これは私がgacveしたURLです(私は WCFClientHost から取得しました)

http://localhost:8732/Design_Time_Addresses/WcfServiceLibraryBasicHttpBinding/Service1/mex

しかし、WCF サービスを追加しようとするたびに Http 400 エラーが発生します。私が間違っていることを教えてください。

4

1 に答える 1

1

2つのことを区別する必要があります。

  • Add Service Reference.NET3.0以降のWCFランタイムに基づくサービスインターフェイスを追加します。すべてのWCFバインディングをサポートします-を含むbasicHttpBinding

  • Add Web Referenceは、ASMX Webサービス(「ASP.NETWebサービス」)への参照を追加する古いスタイルの.NET 1.x/2.xメソッドです。このテクノロジは古く、.NET3.0では完全にWCFに置き換えられています。ASMXは、多かれ少なかれと同等のもののみをサポートしていましたbasicHttpBinding

    ASMXテクノロジは時代遅れであり、WCFを実際に機能させることができない場合にのみこれを使用する必要があります(ただし、3年間、大量のWebサービスを作成して使用したことがありますが、そのようなケースは見たことがありません)。 WCFを機能させることは絶対にできません-奇妙な理由があれば...

あなたがCodeProjectの記事に与えたリンクには、あなたが使用する必要のある完全に明白な間違ったステートメントがあります-それは単純なNOTTRUEです。Add Web ReferencebasicHttpBinding

于 2012-06-18T19:52:18.490 に答える