0

すべての着信呼び出しに使用される高価なリソースを初期化する必要がある WCF サービスがあります。最初に静的変数を使用してステータスを記録しましたが、変数は呼び出しごとにリセットされました。次に、静的サービス コンストラクターを使用して初期化しましたが、すべての着信呼び出しで呼び出されました。InstanceContextMode を Single および PerSession に設定しようとしましたが、どちらも機能しませんでした。

何か案は?

4

1 に答える 1

0

サービスへのすべての呼び出しでこれらのリソースにアクセスする必要がある場合は、InstanceContextMode を Single に設定することをお勧めします。おそらく (推測にすぎませんが) ワーカー プロセスがリサイクルされているため、新しいワーカー プロセスが開始されたときに初期化コードを再度実行する必要があります。そのような場合は、このドキュメントを参照して、自動開始を使用するようにアプリケーション プールを構成してください。

http://msdn.microsoft.com/en-us/library/ee677260.aspx

これが役に立たない場合は、初期化コードがどのように/どこで実装されているかについての追加の詳細が役立ちます。

于 2013-08-14T21:14:14.410 に答える