1

サービスがありC#/WCFます。サービス参照を追加する際に 問題 発生したため、同僚の 1 人が、ライブラリを使用して単純に参照を追加することを提案しました。

ここでの 2 番目の回答は、そうすることでサービスの再利用性が失われることを示唆しています。
あれは正しいですか?これらのオプションの間に他に違いはありますか?

編集
私はWCFの経験がありません。私はこのチュートリアルに従って作業していました。回答にもいくつかの説明(またはそれらへのリンク)を提供してください。

編集 2
メイン アプリケーションを実行するすべてのマシンで実行される、Windows でホストされる WCF サービスが必要です。私のアプリケーション (および別のアプリケーション) は、このサービスをローカルでのみ使用します。
「参照の追加」でそれを達成できますか?

編集3
同じことをしている2つの異なるアプリケーションがあり、そのためにHWリソースが必要なため、サービスが必要です。現在、それらの 1 つが他の dll を使用しているため、コードは (少なくとも) コピー アンド ペーストされませんが、それらのリソースへの同時アクセスを防ぐ方法はありません。Windows サービスは、この問題を解決できます。
バインディングはあまり重要ではありません。名前付きパイプについてさらに読みます。

4

4 に答える 4

0

Add referencedll、exeなどへの参照を追加します

Add service referenceいくつかのサービスへのプロキシクラスを作成することです

于 2013-03-12T09:31:03.650 に答える
0

[サービス参照の追加]を使用すると、Visual Studioはsvcutil.exeを使用してクライアントプロキシ(およびさらにweb.configまたはapp.configファイル)を作成します。これは、サーバー側のメソッド(サービスコントラクト)を記述する特別なクラスです。このコントラクトを知っていて、適切な構成を持っている場合、サーバーサービスからこれらのメソッドをリモートで呼び出すことができます。

[参照の追加]を使用する場合は、新しいライブラリを追加するだけです。このライブラリを使用して、そこに実装されているクラス、インターフェイス、メソッドを操作できます。dllにサービスコントラクトクラスがある場合は、svcutil.exeで作成する代わりに、それを使用できます。ただし、その設定(バインディングとアドレス)を構成する必要があります

編集1WFCサービスを作成する例はたくさんあります。http://www.codeproject.com/Articles/42643/Creating-and-Consuming-Your-First-WCF-Serviceまたはhttp://www.codeproject.com/Articles/412363/How-to-Use-aを参照してください-WCF-Service-without-Adding-a-Service。そして、あなたが望む説明?コントラクトを作成し(メソッドでクラス化)、それをクライアントアプリとサーバーアプリにリンクし、適切なバインディングを定義するだけです。これにより、それらの間でコントラクトデータを送信する方法が説明されます。

編集2アプリケーションの目的を知らずに何を使用しなければならないかを言うのは難しいです。したがって、はい、ローカルWindowsサービスを使用してそこでwcfサービスをホストできます。NamedPipeと呼ばれるそのようなもののための特別なタイプのWCFサービスが存在します-ローカルでホストされるサービス。説明についてはhttp://msdn.microsoft.com/en-us/library/system.servicemodel.netnamedpipebinding.aspxを、実装についてはhttp://msdn.microsoft.com/en-us/library/ms733069.aspxを参照してください。

于 2013-03-12T09:39:24.673 に答える
0

メイン アプリケーションはすべてのクライアント マシンで実行され、WCF サービスはサーバーで実行されます。すべてのクライアントで WCF サービスを実行するわけではありません。これは意味がありません。

したがって、通常は次のようになります。

  • クライアント アプリケーションを作成する
  • WCF サービスを作成する
  • クライアント アプリケーションから WCF サービスへのサービス参照を追加する

デプロイ中:

  • クライアント アプリケーションを使用するすべてのクライアント コンピューターにクライアント アプリケーションを展開します。
  • WCF サービスを 1 つ以上のサーバー コンピューターにデプロイする
于 2013-03-12T09:51:48.357 に答える
0

参照の追加はプロジェクト内の dll または exe ファイルを使用するために使用され、サービス参照の追加はサービスを追加するために使用されます。サービス参照を追加すると、プロジェクトにプロキシが作成されます

于 2013-03-12T09:45:56.460 に答える