ソリューションにコンソールアプリとWCFサービスアプリがあります。コンソールアプリからWCFアプリを呼び出したいのですが。コンソールアプリプロジェクトにサービス参照を追加し、サービスを参照しようとしましたが、その名前空間が見つかりません。私はVS2010を使用しています。私が間違っていることについて何か考えはありますか?
3 に答える
サービス参照を追加する場合、それはアセンブリ参照と同じではありません。
サービス参照を追加できる場合、必ずしもサービスの内部の詳細を知っているとは限りません。多くの場合、それはあなたのサービスではなく、他社のサービスになります。サービスリファレンスは、コントラクトを定義するだけです。
したがって、サービス側で宣言した名前空間またはオブジェクトを使用してサービスを見つけることはできません。むしろ、クライアントは実際にはコントラクトに基づいて独自のクライアント側オブジェクトを定義しています。参照を追加したときに、追加する名前空間を選択できます。
Visual Studioで、ソリューションエクスプローラーでクライアントプロジェクトをクリックし、[すべてのファイルを表示]オプションを有効にします。次に、サービス参照をナビゲートし、サービス参照の追加ウィザードによって自動生成された隠しファイルを見つけることができるはずです。これらのファイルを調べることで、どの名前空間で宣言されているかがわかります。
Webサービスの利用に関しては、コンソールアプリケーションと他のアプリケーションタイプについて特別なことは何もありません。
Webサービスを利用する方法を参照してください。
最近、私も同じ問題に直面しています。次の手順を実行しました。1)Reference.csファイルを開きます2)エラーは以下のエラーのようになります
Error 3 The type name 'ServiceReference1' does not exist in the type 'LongOperationClient.ServiceReference1.LongOperationClient'
(自動生成された)Reference.csファイルで'NamespaceOfProject.serviceReference1'を削除します
3)保存してビルドするそれは私のために働いた。よろしく、ヘマント