問題タブ [asynchronous-wcf-call]

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

c# - WCF: 非同期呼び出しのオペレーション インボーカーでのグローバル エラー処理

wcf サービスのグローバル エラー処理が必要です。そのため、独自の Operation Invoker を実装したいと考えています。すべてのサービス操作には、基本応答タイプから継承された応答タイプがあります。この基本応答タイプには、操作が成功した場合はフラグがあり、例外によってはエラー コードが返されます (コード スニペットでは省略されています)。同期呼び出しの実装は、さらに下のコードのように見えますが、非同期呼び出しで同じことを行うにはどうすればよいでしょうか?

ところで、一般的にそのアプローチについてどう思いますか?

0 投票する
0 に答える
473 参照

c# - Javascript から呼び出された同期 WCF サービスを非同期に変換する

WCF Image Upload Serviceを同期ではなく非同期にする方法を教えてください。私のSaveImage関数は、非同期の JavaScript 呼び出しから直接呼び出されます。

コントラクト (IImageWCFService.cs):

サービス (ImageWCFService.svc.cs) :

これは一方向の呼び出しである必要があるため、void を返します。ユーザーは関数から結果を取得したり、関数が成功したかどうかを取得したりする必要はありません。

現在、この WCF サービスが実行されると、メイン スレッドが消費されます。非同期で実行したい。推奨される方法は次を使用することです。

またはWCF のタスクベースの非同期パターン。

私は多くの記事を読みましたが、関数に実装する方法がまだ非常に混乱しています。イメージ アップロード機能の実装を示すコード例が必要です。

注:この質問のさまざまな非同期実装の違いに関する良い情報源- これを実装する最良の方法は、 WCF のタスクベースの非同期パターンを使用することです。

繰り返しますが、呼び出しは JavaScript から直接行われますが、必要に応じてサーバー側で WCF サービスを呼び出す保存サーバーの Web サービス (asmx) を作成しても問題ありませんが、すべてについて混乱しています。これ。

ありがとう。

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

wcf - TransactionScopeAsyncFlowOption と分離レベル?

WCF サービスで Entity Framework 6.1 を使用しており、SELECT クエリを READ UNCOMMITTED 分離レベルで囲みたいと考えていました。これは、他のバッチ更新が読み取り中のテーブルに挿入され、それらのバッチ更新が発生しないようにロックしたくないためです。テーブルに対して READ が実行されたとき。これは基本的に SELECT WITH NOLOCK をシミュレートします。

このコードは、非同期方式でも使用されていました。したがって、単純に TransacactionScope を使用することはできませんでした。.Net 4.5.1 フレームワークも使用していることに注意してください。

TransactionScope の Isolation Level を ReadUncommitted に設定できますが、TransactionScopeOption のデフォルトは ReadCommitted です。分離レベルを変更する方法がわかりません。

分離レベルを変更する方法はありますか? 分離レベルを設定できない場合、上記の状況でクエリを実行しても問題ありませんか?

実際、Isolation レベルを「NOLOCK」に設定できない場合は、TransactionScopeAsyncFlowOption を含める必要さえありません。

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

c# - WCFでSystem.ServiceModel.ServerTooBusyExceptionを解決するには?

1 日平均 50,000 回のアクセス (約 140,000 ページ ビュー) の Web サイトを開発しています。また、非同期メソッドを使用WCFInstanceContextMode = InstanceContextMode.PerCall
て WCF サービスを呼び出しています。
最近、一部のページと一部の要求で次の例外メッセージが表示されます。

serviceBehaviors以下のように変更してもよろしいでしょうか?
以下は良い解決策ですか?

つまりserviceThrottling maxConcurrentCalls="2147483647" maxConcurrentInstances="2147483647" maxConcurrentSessions="2147483647"