問題タブ [wcf-binding]

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 投票する
1 に答える
589 参照

wcf - SSL が IIS ファーム (WCF) の前のプロキシにある場合にフォーム認証を使用する方法は?

これが私のシナリオです:

実際に SSL 証明書がインストールされているプロキシがあり、これは負荷分散された Web ファームの前にあります。各 IIS サーバーには SSL がないため、wsHttp バインディングを介してトランスポート セキュリティを使用できません。このソリューションで今後SOAP 1.2を提供したいので、basicHttpについては調査していません。これに加えて、私のネットワーク チームは、証明書を使用してメッセージ レベルで暗号化することを許可しません。(これだけで私のジレンマは解決すると思います)

私のセキュリティ グループには、フォーム認証 (メンバーシップ プロバイダー) を使用するという要件があります。

最終的な解決策では、フロント プロキシ経由で SSL を許可する必要がありますが、構成ファイルに複雑さをカプセル化するために、ある種の WCF バインディングを使用する必要があります。

ユーザー名/パスワードをクリア テキストで送信できるようにするカスタム バインディングを使用していましたが、https 経由で接続しようとすると、通常の "http expected" uri エラーが発生します。

プロキシ経由で SSL を使用してクライアント アプリから Web サービスに安全に接続する方法はありますが、IIS に SSL をインストールせずに WCF スタック + フォーム認証を利用するにはどうすればよいですか?

私はWCFを初めて使用するわけではありませんが、この非常にカスタムなセットアップでは、要件が「簡単な」ソリューションを許可するかどうかわからないようです。

前もって感謝します!

編集:ようやくこれが機能するようになり、カスタム バインディングを記述するために必要な完全なソース コードを 含む短いブログ投稿を書くことにしました。

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

wcf - WCF で net.pipe を介して複数のサービスを実行する

6 つの異なるサービスを必要とする分散アプリケーションを構築しています。Visual Studio 2008 を使用して、XP ラップトップでアプリケーションのデモを行う必要があります。

すべて net.pipe を使用して、同時に localhost で複数のサービスを実行することは可能ですか?

例えば:

そうでない場合、IIS/webdev サーバーを使用せずにこれらの WCF サービスをホストする他の方法はありますか? net.tcp? 他の何か?

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

wcf - WCF サービスでカスタムの複雑なインターフェイス タイプを公開する際の問題

WCF を使用して別のアプリケーションからオブジェクトを取得しようとしています。組み込みのクラスでは正常に動作しますが、WCF 操作からカスタム インターフェイス タイプを返そうとすると問題が発生します。

インターフェイスを両方のアプリケーションに個別に含めるか、共有アセンブリとして指定するかにかかわらず、同じ結果が得られます。

インターフェイスは次のようになります。

私のサーバーは次のようになります。

そして、これが私のインターフェースの実装です:

クライアントは次のようになります。

次の行を除いて、すべてが魅力のように機能します。

「パイプからの読み取り中にエラーが発生しました: 認識できないエラー 109」というメッセージを含む CommunicationException が表示されます。私が知る限り、それは故障状態によるパイプの破損ですが、その理由、またはさらに重要なことに、それを修正する方法がわかりません。何か案は?

上記のコードですべてが行われるため、構成ファイルがないため、トレースをオンにする方法がわかりません。そうしないと、それも含まれていたはずです。

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

.net - net.pipe 対 net.tcp 対 http バインディング

私は WCF を初めて使用し、次の各バインディングの違い/利点/制限などを知りたいです。

各バインディングと他の例をいつ使用するかについてのシナリオをサポートしていただければ幸いです。

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

wcf - WCF サービスでの protobuf の使用

私のasp.net WebページはIIS Webサーバー上にあり、基本的なHTTPバインディングを使用してWCFサービス(Windows 2008アプリサーバー上にある)と通信します。私の wcf サービスのパフォーマンスはそれほど良くないようで、同じように改善したいと考えています。また、サイトのトラフィックが非常に多いため、スケーラビリティのバランスをとる必要があります。

HTTP 圧縮、スロットリングは、認識している方法の一部ですが、まだ試していません..protobuf API を使用できますか...提案してください...

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

.net - net.tcp バインドを使用して WCF サービスをホストしていた WAS

アプリケーションサーバーで使用される一連のコンピューターで計算サービスを公開しようとしています。計算サーバーはステートフルであり、非同期コールバックを実行できる必要があるため、TCP 経由でセッションごとの設定を使用したいと考えています。

サービス アプリケーションは、VS2008 の WCF サービス アプリケーション プロジェクト タイプを使用して構築されました。

たまたま計算サービス マシンが Vista を実行しているので、私が読んだドキュメントによると、WAS ホスティングを使用できるはずです。この件に関する Microsoft の指示に従おうとしています。

WCF コンポーネントのインストールと構成

WAS で WCF サービスをホストする

しかし、私は早い段階で問題を抱えています。.svc ファイルをアプリケーションの仮想ディレクトリに配置することになっています。しかし、IIS ホスティングを使用していないので、仮想ディレクトリを作成するにはどうすればよいでしょうか? 上記のドキュメントはこれについて明確ではありません。

また、アプリケーションへの net.tcp アクセスを許可するコマンドを実行しようとすると:

何と交換すればいいのかわからない<WCF Application>。繰り返しになりますが、「IIS でホストされるような」方法でサービスを公開する前のステップが欠落しているようです。

サービスを利用しようとするテスト アプリケーションを作成しました。「サービス参照の追加」をクリックすると、サービスが検出されますが、net.tcp を使用して接続できません。

WAS のホスティングとサービスの利用に成功した人はいますか? 私への指針はありますか?

更新: IIS マネージャー (右クリック -> バインディングの編集...) を使用して net.tcp バインディングを Web サイトに追加しようとしましたが、追加... ダイアログで使用できるプロトコルは http と https だけです。そのリストに net.tcp はありません。はい、非 http アクティベーション コンポーネントをインストールしました...非常に奇妙です。

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

c# - WCF:「System.ServiceModel.Channels.ClientReliableDuplexSessionChannelを開くことができませんでした」

現在、コールバックコントラクト(デュプレックス)を使用するWCFサービスがあり、それを使用するアプリケーションをコンピューターで使用するとすべて正常に動作しますが、別のコンピューターから試してみると接続されません。

wsDualHttpBindingこれらの問題は、これを(コールバックに)使用するように切り替えると発生し始めました。これは、使用するとwsHttpBindingすべてが正常に機能したためです。

Webサービスが他のコンピューターからの要求を受け入れないのはなぜですか?変更する必要があるのはいくつかのホスティング設定ですか?


ログに関して、私はこれらを取得しています:

代替テキストhttp://img17.imageshack.us/img17/4628/wcfissue.jpg

割り当てられたタイムアウト00:01:00内に、オープン操作が完了しませんでした。この操作に割り当てられた時間は、より長いタイムアウトの一部であった可能性があります

System.ServiceModel.Channels.ClientReliableDuplexSessionChannelを開くことができませんでした

障害が発生したSystem.ServiceModel.Channels.ClientReliableDuplexSessionChannel

障害が発生したSystem.ServiceModel.Channels.ServiceChannel

System.ServiceModel.Channels.ServiceChannelを開くことができませんでした


ポートはルーター(TCPとUDPの両方)で開いているので、問題はありません。

サービス属性に関しては、これが私が使用しているものです。

インターフェース:

サービス:


[アップデート]

オリオンエドワーズの投稿に関して:

  • ファイアウォールなし
  • ポイント1を参照
  • はい、できます。ルーターにポートを転送しているからです。
  • サーバーをホストするためにIISを使用しています。

wsHttpBinding問題は、この問題は、 (正常に機能していた)からwsDualHttpBinding(コールバックが必要だったため)に切り替えたときに発生し始めたということです。


[アップデート]

wsDualHttpBinding私は今からに切り替えました、NetTcpBindingそして何らかの理由で、すべてがうまく働いています。

この記事を使用してIISでホスティングを設定しましたが、ありがたいことに、コールバックを使用してすべてが期待どおりに機能しています。

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

silverlight - .NET WebサービスのSilverlightシリアル化により、XMLエラーが発生します

このクラスは、Silverlightアプリによって消費されるWebサービスによって提供されています(それが適切かどうかはわかりません)

何が問題になっているのかを示すために追加した_title変数。SilverlightアプリでWebサービスを参照すると、次のxsdが生成されます。

タイトルプロパティのみに名前が付けられていることに注意してください。他<Link>_BackingFieldの名前は、プロパティの名前に<または>を含めることができないため、要素をロードしようとすると完全に消滅します。

パブリックプロパティではなく、バッキングフィールドをシリアル化するのはなぜですか?