問題タブ [workflow-foundation-3]
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.
unit-testing - UnitTest WorkflowInstanceID 例外
私は StateMachineWorkflow の単体テストを行っており、テスト プロジェクトをクリックしてテスト メソッドを作成し、Add - UnitTest を作成しています。プロジェクト ウィンドウで、テストするワークフローとその中のすべてのメソッドを選択します。
Visual Studio は、ワークフローへのアクセサを使用してテスト プロジェクトに Test Reference フォルダーを生成しました。また、テストに必要なすべての TestMethod() も生成されました。すべてのテスト メソッドは、MyWorkflow_Accessor ターゲット = new MyWorkflow_Accessor() を使用します。関数を呼び出す必要があるときは、target.SendEmail() のようなことをするだけです。
1 つのことを除いて、すべて正常に動作します。Workflow の WorkflowInstanceId を使用できません。コードがこれを使用する行に到達すると、ワークフローで例外がスローされます。「これは無効な設計時の操作です。実行できるのは、コードでWorkflowIDを注入することは可能ですか? この状況の回避策はありますか? 多くの関数で WorkflowInstanceId を使用していますが、テストに合わせてワークフロー コードを変更することはお勧めできません。なぜなら、問題はワークフローではなくテストにあると考えているからです。
workflow-foundation - Windowsワークフローを強制的に削除する
私はかなり大規模なWindowsワークフローの実装を持っており、ワークフローを更新しなければならない場合があります。時々、ワークフローの定義が壊れて、その結果、IndexOutOfRangeExceptionがスローされる状況が発生します。WFでTerminate()またはAbort()メソッドを使用してワークフローを終了できる場合、これは問題にはなりません。
私が知っている2つの解決策があります。1つ目は、Microsoftが作成した.SQLスクリプトを使用してワークフローテーブルを削除および追加することです。もう1つは、定義を変更して永続テーブルに保存することです。これは非常に面倒な作業であり、気の弱い人にはお勧めできません。
おそらく人々が検討することを恐れている3番目のオプションがあるかどうかを知りたいです-dbo.InstanceStateテーブルとdbo.WorkflowInstanceテーブルからレコードを削除します。 以下は、トリックを実行するスクリプトです。
この単純なスクリプトは私の場合は機能します。このアプローチの賛否両論を聞くために、コミュニティにそれを提示したかっただけです。
jquery - jQueryの.hover()のイベントハンドラーの一部のコードが実行されない
単純なインタラクションを実装しようとしています。マウスカーソルを特定の<li>
要素に合わせると、ホバーされた要素の上に非表示の要素が表示されます。非表示の要素は、ユーザーがさらに操作できるように表示される小さなボタンバーです。アイテムがブロックグリッドとして表示されるように、Zurb's Foundationを使用してスタイル設定された要素<ul>
の束を持つ要素があります。したがって、ネストされた要素があります。 <li>
<ul>
ホバーハンドラーは、カーソルの移動速度やカーソルの位置に関係なく、デバッグログがコンソールに完全に書き込まれるため、正常に機能しているように見えます。ただし、.show()と.hide()の切り替えに一貫性はありません。カーソル<li>
が問題のアイテムに入るとボタンバーが表示される場合と表示されない場合があります。カーソルが要素を出るときに<li>
、ボタンバーが非表示にならない場合があります。最も不可解なのは、デバッグログが期待どおりに呼び出されることですが、ハンドラーの他のコード行は呼び出されません。誰かが回避策を知っていますか?hoverIntentを試しましたが、結果が持続します。<li>
横に並べているせいか、問題が発生するのではないかと思いましたが、よくわかりません。.hover()メソッドで一貫した動作を保証するにはどうすればよいですか?
これが問題のjsfiddleです:http: //jsfiddle.net/DdWrD/6/
いくつかのPHPからマークアップを作成します。
ホバーに表示したいボタンバーのSCSSスタイル
ホバーイベントを駆動しているJavascriptは次のとおりです。
asp.net - ASP.NetでWindowsWorkflowFoundationルールを作成する
ASP.NetアプリケーションからWindowsWorkflowFoundationルールを作成および構成することは可能ですか?Windowsフォームプロジェクト用のものがありますがSystem.Workflow.Activities.Rules.Design.RuleSetDialog
、Razorビューエンジンを使用するASP.Net MVCプロジェクトに相当するものはありますか?
とにかく、ASP.Netクライアント内からルールを作成し、それらをデータベースに保存して、後でサービスでルールを評価できるようにする必要があります。おそらくこれを助けることができるWF4の新しい何かがありますか?
c# - C# NET 3.5 Windows Workflow Foundation - 同時生成の遅さ
Stackoverflow と Google を検索しましたが、自分の状況に対する答えが見つかりませんでした。これが私のデザインです。
1) 2 つのステート マシン ワークフローが定義されています (親と子)。親 WWF は子 WWF のステータスを監視し、子 WWF は特定のメッセージのタスクを実際に実行するものです。
2) 親 WWF が子 WWF (instance.Start()) を 500 個生成します。次に、親 WWF 内のレプリケーター アクティビティ コントロール (並列実行モード) を使用して、子の開始イベントがトリガーされます。
3) コードは VM (8 GB RAM、4 つの CPU コア、独自のアプリケーション プールを備えた IIS 7.0) でホストされます。
同じコードの実行で 2 つの異なる動作があることに気付きました。
A) 500 のすべての子 WWF の処理を完了するのにわずか 8 秒しかかからない場合があります。これはすばらしいことです。
B) ただし、500 のすべての子に対して親 WWF で Instance.Start() を実行した後、レプリケーター アクティビティが 30 ~ 40 秒間何もせずにハングアップし、その後、各子 WWF がほぼ順番に処理されることがあります。そのため、以前は 8 秒で完了していた同じジョブを完了するには、約 300 ~ 400 秒かかります。
私の調査結果に基づくと、すべてはスレッド プールの管理にかかっていると思います。私のコードは ThreadPool.QueueWorkItem() を直接処理しておらず、WWF は実際には舞台裏の別のスレッドで動作するため、WWF のスレッド管理についてはほとんどまたはまったく制御できません。
シナリオ B では、システム パフォーマンスを監視すると、CPU が数秒間 80% まで上昇し、その後低下します。その後、実際に各子 WWF プロセスの処理を開始する前に、30 ~ 40 秒間アクティビティがありません。
では、ボトルネック/遅さはどこにあり、このときどき発生する動作の一時停止をどのように解決すればよいのでしょうか?
助言がありますか?
御時間ありがとうございます。