問題タブ [nettcpbinding]
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# - 2 つのアプリケーションが異なるエンド ポイント アドレスを使用している場合、同じ WCF NetTcpBinding ポートを共有できますか?
サービスがクライアントにインストールされ、別のサービスがサーバーにインストールされる、クライアントとサーバーのシナリオがあります。これらが異なるマシンにインストールされている場合、問題はありません。ただし、クライアント サービスとサーバー サービスの両方を同じマシンにインストールできるようにしたいと考えています。異なるポートを使用するように設定できますが、単一のポートを使用してこれを実現したいと考えています。
Net.Tcp Port Sharing Service Windows サービスを有効にして開始しました。最初に Server サービスを起動します。クライアント サービスを開始しようとすると、serviceHost.Open() の実行時に次の例外が発生します。
The TransportManager failed to listen on the supplied URI using the NetTcpPortSharing service: the URI is already registered with the service.
以下はソースコードです。サーバーとクライアントの両方が、次のように異なるエンド ポイント アドレスを使用します。
サーバー サービス:
顧客サービス:
.net - netTcpBinding で WCF を動作させる際の問題
以下は私のapp.configです
何らかの理由で、これを実行しているマシンで WCF サービスにアクセスできません。誰でもエラーを見つけることができますか? netTcpBinding サービスを稼働させています。
HTTPで同じものを実行していたとき、次の.configファイルで正常に動作していました
私は自分が間違っていることを本当に理解できません..
wcf-security - 既存の nettcpbinding から WCF でカスタム バインディングを作成する
次の WCF とまったく同じ動作を再現するカスタム バインディングを作成する方法を誰か教えてもらえますか?
私が見つけたすべてのグーグルソリューションは、何らかの理由で機能していないようです。httpTransport に関する解決策はたくさん見つかりましたが、nettcptransport に関する解決策はほとんどありません。
上記の構成は現在機能していますが、maxClockSkew を変更する必要があり、これを達成する唯一の方法はカスタム バインディングを使用することです。
前もって感謝します、ブライアン
c# - WCF netTCPバインディングで送信されるシリアル化されたオブジェクトが必要とするスペースの量を決定しますか?
WCF netTCPバインディングで送信されるシリアル化されたオブジェクトがどれだけのスペースを必要とするかを知る方法はありますか?私は
ソケット接続が中止されました。これは、メッセージの処理エラー、リモートホストによる受信タイムアウトの超過、または根本的なネットワークリソースの問題が原因である可能性があります。ローカルソケットのタイムアウトは「00:00:59.9570000」でした
エラーが発生しました。これは、送信しているデータテーブルのサイズが原因である可能性があります。Windowsデバッガーに、返送されるデータに必要なスペース(バイト)を決定する方法はありますか?
wcf - ストリーミング転送 + netTcpBinding = フレーミング モードはサポートされていませんか?
誰でもこのエラーの意味を説明できますか:
使用されている .Net フレーミング モードは何とか何とかしてサポートされていません
価値のある情報が見つかりません。例外はサーバーログを確認するように言っていますが、このエラーに関連するものは何も見つかりません. 「フレーミング モード」が一体何なのかわかりません。それ以外の場合は、別のフレーミング モードを試してみたいと思います。
私がやろうとしているのは、ストリームをクライアントに送信するための TCP WCF エンドポイントを作成することです。
インターフェースは次のとおりです(プロトタイピング):
wcf - WCF - net.tcp バインディングで WS-Compression を使用すると、ソケット接続が閉じられない
最近、私は WCF アプリに取り組んでおり、サービスからの応答のサイズを小さくするために、soap メッセージの本文を圧縮する機能が必要です。
いくつかの調査の後、http://weblogs.asp.net/cibrax/archive/2006/03/29/WS_2D00_Compression-for-WCF.aspx'> http://weblogs.asp.net/からオンラインで入手できる実装を見つけました。 cibrax/archive/2006/03/29/WS_2D00_Compression-for-WCF.aspxの作成者は、チャネル関連のクラスに関連付けられた新しいバインド要素「CompressionBindingElement」を作成しました。
この圧縮ソリューションは私の WCF アプリで完全に機能し、応答のサイズはほぼ 90% 縮小されました。最初に http バインディング (http トランスポートを使用したカスタム バインディングを意味します) でテストしましたが、すべて問題ないようです。
net.tcp バインディング (tcp トランスポートを使用したカスタム バインディング) で試してみたところ、アプリは引き続き正常に動作しました。しかし、いくつかのトレース ツールで確認したところ、奇妙なことがわかりました。
ChannelFactory によってクライアントを作成し、圧縮バインディング要素を含むすべてのバインディング要素を明示的に追加するメソッドを 10 回呼び出して単体テストを行いました。最初に TcpTrace で応答を確認したとき、これら 10 個のメッセージすべてが 1 つの要求にまとめられていることに驚きました。
そのため、SvcTraceViewer でリクエストを確認しようとしたところ、サービスがシャットダウンされるまでソケット接続が開いたままになっていることがわかりました。処理の進行状況を調べたところ、すべてのメッセージ、チャネルはリクエストごとに閉じられていると信じていましたが、接続は閉じられていませんでした。
この問題は、要素がバインディングに追加されていない場合、または http バインディングですべて問題ないように見える場合、圧縮バインディング要素を使用したネット tcp バインディングでのみ発生しました。
誰かがその解決策を試して、同じ問題を見たことがありますか? 接続を強制的に閉じるために他にできることはありますか? 私は何かを逃した可能性がありますか?
どうもありがとう、トニー
wcf - 誰もがIISをWCFクライアントとして確実に機能させることができました
同じマシン上の別のWindowsサービスアプリケーションでホストしているWCFサービスでIIS6を確実に動作させようとしています。ユーザーはいくつかのHTTP公開サービスを介してIISに接続しますが、これは正常に機能しています。その後、IISはWindowsサービスからいくつかの情報を取得してHTTP応答を送信する必要があります。また、WindowsサービスとIISの間にコールバックチャネルが必要です。
多大な努力の結果、netTcpBindingで動作するようになり、すべてが5分または10分間バラ色になりましたが、その後、IISはWCFチャネルに障害があると報告し、ワーカープロセスがリサイクルされるまで、要求の処理を停止します。すべてが繰り返されました。
netNamedPipeBindingにスワップしようとしましたが、IISが拒否するか、「net.pipe:// localhost/mypipenameでリッスンしているエンドポイントがありませんでした」というエラーでパイプへのアクセスを拒否されました。コンソールアプリからパイプに正常に接続できます。
だから私の質問は、誰かがクライアントとしてIISで動作するこれらの2つのバインディングのいずれかを持っているか、または他のアプローチを持っているかということです。
wcf - netTcpBinding または wHttpBinding
Windows サービスとしてホストされている WCF サービスがあり、クライアントは WCF サービス メソッドを使用する ASP.Net アプリケーションです。
セキュリティを実装する過程で、どのnetTcpBinding
/wsHttpBinding
が自分のケースに適しているかについて混乱しています。
ほとんどの場合、シーン内のすべてのアプリケーション (WCF サービス、Windows サービス、ASP.Net Web サイト) は、オフィス内の異なるサーバー、つまりイントラネットに配置されます。ASP.Net Web サイトは、ユーザーがインターネット経由でアクセスします。
ここではいつでも wsHttpBinding を使用できますが、netTcpBinding
私の場合を使用してサービス エンドポイントを設定するのに適していますか?