0

WCF で構築されたサードパーティ アプリケーションがあります。これは Windows サービスとしてインストールされ、デフォルトで をサポートwsHttpBindingbasicHttpBindingます。

またはなどのより最適化されたバインディングに切り替える方法はありますtcpBindingnamed pipes?

同じサーバー内でサービスを使用するため、名前付きパイプはオプションです。

Windows サービスの .config ファイルを変更するだけで、サード パーティで実行できるかどうかを知りたいです。

4

2 に答える 2

3

あなたが言及したWCFサーバーサービスが初期化に「.config」ファイルを使用している場合、動作を変更できるはずです(これが構成ファイルを使用する上でのポイントです。コードを再コンパイルすることなくパラメーターを変更できます)。

新しいバインド構成を追加し、エンドポイントの「binding」および「bindingConfiguration」属性を変更して、新しいものを指すようにしてください。

クライアント構成で、同じバインディング タイプを設定するか、metadataExchange が構成されている場合は、サービス参照を更新して、クライアントの構成が更新されているかどうかを確認します。

于 2009-02-02T16:11:15.563 に答える
0

必要なのは、別の方法でホストするタイプに一致するコントラクト属性を持つサービスの app.config 内の新しいバインディング構成だけです。これにより、コンポーネント/サービスにとって重要な場合と重要でない場合がある別のサービス ホストが作成されます。コントラクト属性は、WCF が使用するバインディング/エンドポイント構成を決定する方法であるため、ここで重要です。「WCF ABC = Address、Binding、Contract」、これら 3 つを指定すると、起動して実行する必要があります。

また、たとえば Web アプリ プロジェクトで必要なアセンブリを参照し、適切な基本クラスを識別する必要な .svc ファイルを作成することにより、Windows サービス WCF サービスを IIS WCF サービスとしてホストすることもできます。

于 2012-07-14T03:09:09.690 に答える