問題タブ [servicehost]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
158 参照

c# - WCF サーバー間コードは、TCP タイムアウトとエラーをトリガーしません

サーバー間通信プロトコルをWCFで作ってみました。しかし、何らかの理由で、サーバーが切断されると、Faulted イベントも Closed イベントも呼び出されません。これは本当に面倒ですが、解決策が見つかりません。

ばかげたことは、接続が切断されたときに ILoginService インターフェイス内の関数だけが例外をスローすることです。TCPには独自のキープアライブがあると思いましたか?

0 投票する
1 に答える
271 参照

c# - WCFWebサービスを使用してサーバーが受信したデータを取得する

Webサービス(のおかげでメインで作成されたnew ServiceHost(typeof(..)))を使用したいのですが、サーバーが受信したデータを取得してメインで処理したいと思います。

単純なイベントハンドラーから始めましたが、を使用する代わりにインスタンスを作成する必要があるため、それは不可能です typeof

別の解決策はありますか?

0 投票する
1 に答える
1867 参照

c# - wcfデュプレックスサービスがコールバック呼び出しでフリーズする

サービス契約:

クライアント契約:

デュプレックスサービスがあり、クライアントメソッド「DoCommand」を呼び出しているときに、そのメソッド内でServiceメソッドfooが呼び出されると、サービスがフリーズします。fooを非同期で呼び出すと正常に機能しますが、呼び出しを同期する必要があります。

0 投票する
2 に答える
818 参照

c# - ServiceHostのサービスタイプをプログラムで検出する

G'day、

私はMSDNとここを検索しようとしましたが、これはできないと思います。

への参照が与えられた場合、ServiceHostそれが実行しているホストのタイプを発見することは可能ですか?

何かのようなもの

MagicCallHereは存在しますか?

反射をかわすことができればボーナスマーク...

0 投票する
4 に答える
2513 参照

c# - セルフ ホスト WCF ServiceHost オブジェクトの有効期間

私の WCF サービスを開始するには、次を使用します。

ある時点で、これにより のインスタンスが作成されますMyServiceClass。単一のインスタンスを作成しますか、それともリクエストごとにインスタンスを作成しますか?

0 投票する
1 に答える
1036 参照

wcf - WCF 起動ホスト エラー

次の WCF サービスを起動します。

これは次の場合に失敗します。

サービス MT5Platform によって実装されたコントラクトのリストに、コントラクト名 'IMetadataExchange' が見つかりませんでした。ServiceMetadataBehavior を構成ファイルまたは ServiceHost に直接追加して、このコントラクトのサポートを有効にします。

ここには大きな間違いはありませんが、どこで見つけることができますIMetadataExchangeか?

ありがとう、

ユルゲン

0 投票する
2 に答える
2036 参照

c# - コンソールがホストする WCF サービスがトレースされない

簡単なサービス コントラクトを作成し ( IServiceObject)、それを実装しました ( ServiceObject)。ServiceHostコンソール アプリケーション内に含まれるオブジェクトでホストします。メソッドの 1 つの中で、OperationContractを呼び出しますTrace.WriteLine(...)。も呼びますConsole.WriteLine(...)。コンソール アプリケーション内で、 の前後に とOpen()を呼び出しServiceHostます。Trace.WriteLine(...)Console.WriteLine(...)

トレースは autoflush に設定されており、2 つのリスナー (TextWriterTraceListenerおよびConsoleTraceListener) があります。コンソール アプリケーションが起動すると、すべての Trace および ConsoleWriteLine()呼び出しがそれぞれのログに書き込まれます。したがって、Trace 呼び出しはテキスト ファイルとコンソールに書き込み、Console 呼び出しはコンソールに書き込みます。

私のクライアント アプリケーション (別のアプリケーション) がOperationContractメソッドを呼び出すと、そのConsole.WriteLine(...)中の呼び出しだけがコンソール画面に表示されます。呼び出しは、Trace.WriteLine(...)コンソール画面やテキスト ファイルには書き込まれません。

OperationContract(メソッド内から) Trace statsをクエリすると (コンソール画面に出力されますConsole.WriteLine(...))、Trace には 2 つのリスナー (Text と Console) があり、autoflush がオンになっていると言われます。

私の呼び出しがメソッドTrace.WriteLine(...)内からのみリスナーのいずれかに書き込みに失敗する理由を誰かが知っていますか? クラスOperationContractを装飾するために必要な特定の属性はありますか? ServiceObjectどこかに欠けている可能性のある設定はありますか?私のOperationContractメソッド内を除いてどこでも機能するため、トレースは正しく構成されているようです...

これは問題のようです。私の OperationContract とその実装のみを含む私の共有ライブラリ:

IServiceObject.cs

ServiceObject.cs

Shared.csproj (これが原因だと思われますが、理由はわかりません):

新しい共有ライブラリをホストする新しいサーバー コンソール アプリとそれに接続する新しいクライアント コンソール アプリを作成しましたが、問題はありませんでした。次に、このプロジェクトを共有ライブラリ (上記) としてインポートすると、ServiceObject.cs で見つかったトレースが機能しませんでした。新しいアイデアはありますか?

0 投票する
1 に答える
387 参照

c# - 単一の Windows サービスで数十の WCF サービスをホストする適切な方法は何ですか?

私は、数十を超える WCF サービスを単一の Windows サービスに移行する任務を負っています。Windows サービス テンプレートを使用して Windows サービスを作成し、次のコードを ServiceHostController に追加しました。

ここで自分自身を繰り返さないルールに従わないことに加えて (実際のコードは異なります)、これは Windows サービス コードでこれらの WCF サービスをホストする方法ですか?

0 投票する
1 に答える
3430 参照

wcf - WCF: セルフ ホスト サービスでの HTTP 400 Bad Request

私はこのインターフェースを持っています:

そしてこのサービス:

および次の構成:

ServiceHost を使用して WPF アプリケーションで自己ホストされます。このコードは次のようになります。

サービスは例外なく開始されます。しかし、URL http://localhost:8000/LocationBasedServiceをブラウザに送信すると、HTTP 400 Bad Request が返されます。Visual Studio の [サービス参照の追加] を使用して WCF クライアントを作成しようとすると、次のエラーが発生します。

「http://localhost:8000/LocationBasedService」。コンテンツ タイプ application/soap+xml; charset=utf-8 はサービスhttp://localhost:8000/LocationBasedServiceでサポートされていませんでした。クライアントとサービスのバインディングが一致していない可能性があります。リモート サーバーがエラーを返しました: (415) コンテンツ タイプが 'application/soap+xml; であるため、メッセージを処理できません。charset=utf-8' は予期されたタイプの 'text/xml ではありませんでした。charset=utf-8'.. サービスが現在のソリューションで定義されている場合は、ソリューションを構築してサービス参照を再度追加してみてください。

次のコードを使用してクライアントを呼び出そうとすると、タイムアウト例外が発生します。

誰かが私が見逃したものについていくつかの洞察を与えることができますか. これは簡単な演習になるはずでした:!

ティア。

0 投票する
3 に答える
2189 参照

c# - WCF 1 つのサービス インスタンスに対する複数のチャネル

これは、サーバー アプリケーションの私のコードです。

とクライアント:

実行すると、次の出力が得られます。

私の場合、サーバーは Service の 2 つのインスタンスを作成します。私がやりたいことは、First が行ったのと同じ Service インスタンスに対して Second 関数を呼び出すことです。