問題タブ [mex-bindings]

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 に答える
1365 参照

wcf - Excelに登録せずにWCFモニカーで「インターフェイスが見つかりません」

Excel を WCF サービスに接続しようとしていますが、些細なケースでさえ機能しないようです... Excel でプロキシを作成しようとすると、無効な構文エラーが発生します。Visual Studio デバッガーを Excel にアタッチしましたが、実際のエラーは "インターフェイスが見つかりません" です。ビジュアルスタジオによって作成されたテストクライアントは問題ないので、サービスが機能することはわかっています...問題はVBAモニカ文字列にあります。

次の2つのうちの1つを見つけたいと思っています。

1) この作業を行うモニカ文字列の修正、または

2) 動作するホストとクライアントの両方のソースを含む、ダウンロードする既存のサンプル プロジェクト。

私のVBAクライアントのコードは次のとおりです。

次のサービスがあります。

次の構成ファイルがあります。


編集:

私のために働いた更新されたモニカは次のとおりです

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

wcf - WCF:VS2010でDEBUGからRELEASEビルドまでMEXを自動的に無効にしますか?

製品の RELEASE ビルドがインストールされている場合に、クライアントへの障害情報のフローを自動的に無効にするコードがあります。RELEASE ビルドで MEX メタデータを使用できないようにする賢い方法があるかどうか疑問に思っています。これは、次のリンクで見つけた障害情報を自動的に無効にするために行ったことです: http://codeidol.com/csharp/wcf/Faults/Fault-Contracts/

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

wcf - net.tcp mex エンドポイント (mexTcpBinding) を強制的にポート共有に参加させる方法は?

Windows サービスとしてホストされている WCF サービスがあります。同じアドレスで mex エンドポイントを有効にしたいと考えています (ただし、'/mex' サフィックス付き)。次の構成を使用してこれを(失敗して)実行しようとしました:

実行すると、サービス ホストはAddressAlreadyInUseException「IP エンドポイント 0.0.0.0:808 にリスナーが既に存在します」という不平をスローします。MyServiceポート共有サービスは、このマシンでそのポートを共有することを要求する他のサービスと共にエンドポイントにサービスを提供するためにそのポートを開いているため、これは実際には私には理にかなっています。

そのため、mex エンドポイントはポート 808 への排他的アクセスを望んでいるようです。mex エンドポイントを次のように調整することで、これを回避できます。

これは、mex エンドポイントが独自の専用ポートを持つようになったことを意味します。これの欠点は、mex エンドポイントを公開したい他のサービスでも、その mex エンドポイント用に一意のポートが必要になることです。これにより、mex エンドポイントを探すときに予測が非常に難しくなります。

mex エンドポイントを強制的にポート共有に参加させる方法はありますか?

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

wcf - メタデータ交換の問題 - メソッド数の制限?

34 個のメソッドを公開している WCF サービスがあります。今日までメタデータ交換MetadataExchangeClientは問題なく機能していましたが、突然次の例外が発生し始めました。

メタデータに解決できない参照が含まれています: http://localhost:1150/service.svc?wsdl=wsdl0

最も「興味深い」ことは、サービス コントラクトのメソッドの一部 (どのメソッドであっても) をコメントアウトして、サービスが公開するメソッドを少なくすると、メタデータを適切に取得できることです。設定はweb.config読み取ります

すべての名前は名前空間で修飾されており、たとえば 15 個のメソッドを公開している間、すべてがうまく機能します。もっと公開しようとするときはいつでも、どれを公開しようとしても、その例外が発生します。私は何を間違っていますか?

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

wcf - mexバインディングなしでWCFサービスを参照する

Visual Studioのクライアントプロジェクトが、mexバインディングを持たないWCFサービスをどのように参照できるのか疑問に思いました。サンプルのWCFサービスでデフォルトのmexバインディングを削除すると、クライアントアプリはサービスを見つけることができず、自動生成されたコメントで、本番環境ではmexバインディングを削除することをお勧めします。では、クライアントアプリはどのようにしてサービスを見つけて参照するのでしょうか。

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

c# - ローカル接続のみを受け入れるように WCF NetTcpBinding を設定する際のエラー

受信メッセージ/接続のみを受け入れる WCF サービスをセットアップしようとしています。

サービスを正常に作成して実行し、このコードを使用してサービスと通信して、WCF エンドポイントを作成することができました (ローカルホストのみに限定されません)。

この行を追加して、localhost からの接続に制限するとすぐに

この例外が発生します

System.ServiceModel.AddressAlreadyInUseException: IP エンドポイント 0.0.0.0:19852 には既にリスナーがあります。これは、このエンドポイントで既にリッスンしている別のアプリケーションがある場合、またはサービス ホストに同じ IP エンドポイントを持つ複数のサービス エンドポイントがあり、バインディング構成に互換性がない場合に発生する可能性があります。---> System.Net.Sockets.SocketException: 通常、各ソケット アドレス (プロトコル/ネットワーク アドレス/ポート) の使用は 1 つだけ許可されます。

私がやっていることがWCFアクセスを制限する正しい方法であるかどうかさえわかりませんが、明らかに機能していません。私には、これは MEX エンドポイントとのある種の競合のように見えます。私の知る限り、mex エンドポイントが必要なので、それを取り除くことはできません。誰かが私に解決策を教えてくれますか?