問題タブ [pollingduplexhttpbinding]
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.
javascript - HTTP-SilverlightからJavascriptへのブリッジを使用してプッシュ(Comet / Reverse Ajax)しますか?
PollingDuplexHttpBinding をSilverlightとともに関数と組み合わせて使用して、 RegisterScriptableObject
Cometスタイルのjavascript機能を実現することをお勧めしますか?
(チュートリアルを参照)
私はこのアプローチがフォーラムで議論されたり、無料の解決策として推奨されたりするのを見たことがありません。代わりに、 WebSyncやPokeInなどの有料オプションについてのみ聞いた。
SilverlightはBayeuxプロトコルを実装していますか?それが必要ですか?
wcf - WCF - 指定された時間タスクを遅らせる方法は?
Silverlight クライアント用の WCF WebService があります。
クライアントが「建物を作る」をクリックしたとしましょう。
サービスは、アクションを実行する (データベースに追加する) 準備が整うまで、新しいタスクと星のカウント時間を受け取ります。
時間 - タスクを完了するのに必要な時間 (建物の建設など)。
ポイントは、タスクを一定時間遅らせる方法です。
また、サーバーからクライアントに時間をストリーミングする方法はありますか? 私はこれをセットアップしました:
IDuplexClient:
そしてクライアント側:
それは働いています..最初の実行のために。でも、時間はリフレッシュされません。それは私が望んでいることではありません。同様に、ブラウザで数回強制的に更新した後、時間がまったく表示されなくなります。
それがクライアントコード全体です。私は最終的に修正し、時間はクライアントに適切にストリーミングされています(少なくとも今のところ、 foreach を while(true) ステートメントで囲むだけで十分だったので、驚くほど簡単でした)。
しかし、反対側に。ブラウザを閉じて再度開くと、何も表示されません。リフレッシュした後も、時間がまったく表示されません。
.net - 5 回または 6 回の呼び出し後に PollingDuplexHttpBinding が失敗する
サーバーからのクライアント コールバックを使用して大量のデータを取得するために、Silverlight 4 アプリケーションにポーリング デュプレックスを実装しました。並列に呼び出された関数が 3 つまたは 4 つだけの場合は正常に動作していましたが、5 つまたは 6 つを超える並列呼び出しがある場合は、ServerTooBusyException (サービスがビジー状態です) が発生します。
serviceThrottling maxConcurrentCalls="10000" maxConcurrentInstances="10000" maxConcurrentSessions="10000" 値も設定した後、問題を解決できません。
サービスにbasichttpbindingを適用するとすべて正常に動作しますが、pollingDuplexHttpBindingを適用するとエラーが発生します
silverlight - Silverlight Polling Duplexに最大パケットサイズはありますか?
Silverlight Polling Duplexに最大パケットサイズはありますか?私のクライアントコード(プッシュされたリストのアイテム数をラベルに出力するだけです)は、リスト内の500アイテムに対しては機能しますが、1000アイテムに対しては機能しません(PushReveivedイベントのブレークポイントにヒットするイベントではありません)。Firebugでパケットサイズを確認しました。500アイテムの重みは36KB、1000アイテムの重みは72KBです。
silverlight - 他のサービス呼び出しをブロックする WCF Duplex Service
バインディングと 15 秒のポーリング ウィンドウを使用する WCF 二重サービス ( Service1 ) を使用する Silverlight アプリケーションがあります。pollingDuplexHttpBinding
同じドメインでホストされている、かなり標準的な別のサービス ( Service2 ) があります。basicHttpBinding
私が抱えている問題は、Service2の呼び出しがタイムアウトになることです。これは、 Service1がアクティブな場合にのみ発生します。基本的にService1への永続的な接続があり、Silverlight またはホスティング ブラウザー (私のテストでは Firefox 4) は、 Service1をポーリングしている間はService2を呼び出すことができないようです。
ブラウザがドメインへの同時接続数を局所的に制限していることは知っていますが、1 は少し少ないように見えますか?
c# - カスタム バインディングに変換せずに、Polling Duplex バインディングの最大文字列コンテンツ長プロパティを増やすことはできますか?
Silverlight クライアント アプリケーションと WCF Web サービス間の通信に、Polling Duplex Binding を使用しています。xml 文字列パラメーターを使用して Web サービスからメソッドを非同期的に呼び出すことにより、Silverlight Web アプリケーションから WCF Web サービスにメッセージをプッシュします。非常に大きなxml文字列を送信しようとするまで、すべてがうまくいきました。次に、メッセージが表示されます。
「メッセージを逆シリアル化しようとしているときに、フォーマッタが例外をスローしました: 操作 'SendUserSelection' の要求メッセージの本文を逆シリアル化する際にエラーが発生しました。XML データの読み取り中に、文字列コンテンツの最大長クォータ (8192) を超えました。このクォータは、変更することで増加する可能性があります。 XML リーダーの作成時に使用される XmlDictionaryReaderQuotas オブジェクトの MaxStringContentLength プロパティ。"
この場合、通常、web.config ファイル内のバインディングの maxStringContentLength プロパティを増やします。ここでの問題は、readerQuotas 要素 (maxStringContentLength を含む) をバインディングに追加しようとすると、まったく考慮されないことです。これは既知の問題であることがわかりました: http://blogs.msdn.com/b/silverlightws/archive/2010/04/04/some-known-wcf-issues-in-silverlight-4.aspx。そこに示されている解決策は、Polling Duplex 要素を含むカスタム バインディングを使用することです。私はそれを試しましたが、どういうわけかうまくいきませんでした。
私の質問は、この問題に対する他の回避策がありますか、それともこれが唯一の解決策ですか?
c# - pollingDuplexバインディングをカスタムバインディングにどのように変換しますか?
SilverlightWebアプリケーションとWCFWebサービス間の通信にpollingDuplexバインディングを使用しています。これまでは、xmlStringの形式でWebアプリケーションからWebサービスに大量のデータを送信しようとするまでは正常に機能していました。次に、エラーメッセージが表示されました。
「フォーマッタがメッセージの逆シリアル化中に例外をスローしました:操作'SendUserSelection'の要求メッセージの本文の逆シリアル化中にエラーが発生しました。XMLデータの読み取り中に最大文字列コンテンツ長のクォータ(8192)を超えました。このクォータは変更することで増加する可能性がありますXMLリーダーの作成時に使用されるXmlDictionaryReaderQuotasオブジェクトのMaxStringContentLengthプロパティ。」
MaxStringContentLengthプロパティを増やすには、pollingDuplexバインディングをカスタムバインディングに変換する必要があることがわかりました(http://blogs.msdn.com/b/silverlightws/archive/2010/04/04/some-known-wcf- issues-in-silverlight-4.aspx)。私の質問はどうすればそれができるのかということです。
Webサービスのweb.configファイルで定義されているpolingDuplexバインディングは、次のようになります。
エンドポイント:
Webサービスクライアントをインスタンス化するためのWebアプリケーション側のコード:
私は次のことを試しました:
終点:
Webアプリケーション側のコード:
コードを実行しようとすると、次のエラーメッセージが表示されます。
「リモートサーバーがエラーを返しました:NotFound。」
私は何か間違ったことをしていますか?何か提案をいただければ幸いです。
silverlight - PollingDuplex を使用するだけでなく、コールバックのない標準メソッドを持つ WCF サービス
正しい行にいるかどうかはわかりませんが、これが私がやろうとしていることです.SilverlightアプリケーションとWCFサービスがあり、SilverlightアプリはPollingDuplexを使用してWCFサービスに「サブスクライブ」し、サービスは動作する接続されたクライアントにデータを送信します。
サービスは [ServiceContract(CallbackContract = typeof(IServiceCallback))] でマークされ、単一インスタンス化されます
問題は、このサービスの標準メソッドを呼び出して、接続された Silverlight クライアントに配布されるデータを渡すことができる別のサービスがあることですが、上記の設定により、コールバックを使用する必要があります (できません)。他のサービスを変更します)。
それが理にかなっている場合、コールバックと標準の両方のタイプの操作を同じサービスに含める方法はありますか?
御時間ありがとうございます
asp.net - ASP.NET/WCF 経由で Silverlight アプリにデータを取得するためのガイダンスが必要
まず、助けてくれてありがとう。私は広範囲に調べましたが、確かな解決策が見つからなかったので、ここにいます...
基本的に私はasp.net(4.0)アプリを開発しています。1 つの Web フォームはレポートを表し、2 つの部分に分かれています。- Silverlight コントロール ホストを保持する div。Silverlight アプリには、カスタム データグリッド コントロールのみが含まれています。
したがって、ご想像のとおり、ユーザーはパラメーターの値を指定し、ボタンをクリックして、Silverlight アプリのカスタム データグリッド コントロールにデータを取得します。-Silverlight アプリにコントロールを追加して、RIA サービスを使用してみませんか。あまり詳細には触れませんが、既存の asp.net ページの一部に平手打ちできる新しいデータグリッドが必要です。
このようなもののベストプラクティスは何ですか。私は広範囲に調べましたが、いくつかのオプションを検討し、足を濡らして実験しました(成功しませんでした)。
私がやりたいと思うことは、ページ上の Silverlight クライアントにデータを送信するだけの wcf サービスを用意することです。Silverlight クライアントは要求を行わないため、要求/応答メッセージ交換パターンは必要ないことを明確にさせてください。これを達成するための私の「探求」の中で、ASPページをクライアントとしてサービスに設定し、Silverlightアプリをクライアントとして同じサービスに設定できれば、うまくいくと思われる二重メッセージングの例/チュートリアルを見つけました。ユーザーがボタンをクリックすると、ASP ページのサービス参照がサービスを呼び出してデータを取得し、Silverlight クライアントにデータを送信します。私が抱えている懸念の 1 つは、私が見つけたすべてのチュートリアルがすべてのクライアントにメッセージを送信することです。では、2 人のユーザーが同時にサイトにアクセスした場合はどうなるでしょうか。両方の sl アプリを更新しますか? 適切なクライアントをターゲットにするにはどうすればよいですか?
私の質問は、このシナリオを解決するためのアドバイス、リンク、またはその他のリソースを提供できる人はいますか?
c# - Silverlight とデュプレックス WCF サービス
Silverlight アプリケーションへの WCF サービス参照を追加しました。web.config からのバインディングは次のようになります。
そして、サービスクライアントインスタンスを作成するためのこのスニペットがあります
私の懸念は、なぜコードで絶対 URL を提供しなければならないのかということです。同じサービスを使用するwinformsアプリケーションがあり、new DuplexCallerIdServiceClient()
理想的なサービスクライアントインスタンスを作成するだけです。私はそれを回避する方法はありますか?バインド設定を変更できません。
ありがとう