問題タブ [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.
c# - WCF サーバー間コードは、TCP タイムアウトとエラーをトリガーしません
サーバー間通信プロトコルをWCFで作ってみました。しかし、何らかの理由で、サーバーが切断されると、Faulted イベントも Closed イベントも呼び出されません。これは本当に面倒ですが、解決策が見つかりません。
ばかげたことは、接続が切断されたときに ILoginService インターフェイス内の関数だけが例外をスローすることです。TCPには独自のキープアライブがあると思いましたか?
c# - WCFWebサービスを使用してサーバーが受信したデータを取得する
Webサービス(のおかげでメインで作成されたnew ServiceHost(typeof(..))
)を使用したいのですが、サーバーが受信したデータを取得してメインで処理したいと思います。
単純なイベントハンドラーから始めましたが、を使用する代わりにインスタンスを作成する必要があるため、それは不可能です typeof
。
別の解決策はありますか?
c# - wcfデュプレックスサービスがコールバック呼び出しでフリーズする
サービス契約:
クライアント契約:
デュプレックスサービスがあり、クライアントメソッド「DoCommand」を呼び出しているときに、そのメソッド内でServiceメソッドfooが呼び出されると、サービスがフリーズします。fooを非同期で呼び出すと正常に機能しますが、呼び出しを同期する必要があります。
c# - ServiceHostのサービスタイプをプログラムで検出する
G'day、
私はMSDNとここを検索しようとしましたが、これはできないと思います。
への参照が与えられた場合、ServiceHost
それが実行しているホストのタイプを発見することは可能ですか?
何かのようなもの
MagicCallHereは存在しますか?
反射をかわすことができればボーナスマーク...
c# - セルフ ホスト WCF ServiceHost オブジェクトの有効期間
私の WCF サービスを開始するには、次を使用します。
ある時点で、これにより のインスタンスが作成されますMyServiceClass
。単一のインスタンスを作成しますか、それともリクエストごとにインスタンスを作成しますか?
wcf - WCF 起動ホスト エラー
次の WCF サービスを起動します。
これは次の場合に失敗します。
サービス MT5Platform によって実装されたコントラクトのリストに、コントラクト名 'IMetadataExchange' が見つかりませんでした。ServiceMetadataBehavior を構成ファイルまたは ServiceHost に直接追加して、このコントラクトのサポートを有効にします。
ここには大きな間違いはありませんが、どこで見つけることができますIMetadataExchange
か?
ありがとう、
ユルゲン
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 で見つかったトレースが機能しませんでした。新しいアイデアはありますか?
c# - 単一の Windows サービスで数十の WCF サービスをホストする適切な方法は何ですか?
私は、数十を超える WCF サービスを単一の Windows サービスに移行する任務を負っています。Windows サービス テンプレートを使用して Windows サービスを作成し、次のコードを ServiceHostController に追加しました。
ここで自分自身を繰り返さないルールに従わないことに加えて (実際のコードは異なります)、これは Windows サービス コードでこれらの WCF サービスをホストする方法ですか?
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'.. サービスが現在のソリューションで定義されている場合は、ソリューションを構築してサービス参照を再度追加してみてください。
次のコードを使用してクライアントを呼び出そうとすると、タイムアウト例外が発生します。
誰かが私が見逃したものについていくつかの洞察を与えることができますか. これは簡単な演習になるはずでした:!
ティア。
c# - WCF 1 つのサービス インスタンスに対する複数のチャネル
これは、サーバー アプリケーションの私のコードです。
とクライアント:
実行すると、次の出力が得られます。
私の場合、サーバーは Service の 2 つのインスタンスを作成します。私がやりたいことは、First が行ったのと同じ Service インスタンスに対して Second 関数を呼び出すことです。