1)コードは、アクティビティメソッドスタブをワークフローと同じクラスに配置します(ワークフローデザイナーはWindowsフォームデザイナーと同じように動作します)。プロジェクトの[すべてのファイルを表示]をクリックすると、ワークフローが自動生成されたデザイナークラス)
CallExternalMethodは、別のクラスに存在するメソッドを呼び出します。したがって、すべてのロジックをワークフローと同じクラスに入れる必要はありません。通常どおりに他のクラスに渡すことができます。
2)アプリケーションの動作の重要な部分であるかどうかは、ワークフロー上で確認するのがいいと思います(何が起こっているのかを視覚的に把握することができます)。また、ワークフロー遅延アクティビティでは、ワークフローはアイドルとしてマークされます。したがって、Persistenceサービスを使用している場合、作業フローはこの時点で自動的に永続化されます。また、ワークフロー外から取り上げることができるWorkFlow OnIdleイベントもあります。これがコード経由の遅延に当てはまるかどうかはわかりません。
3)私はこのことを正しく理解しているかどうかはわかりません。ワークフローに何かを渡す場合は、バインドするプロパティ/フィールドが必要ですが、型定義は同じクラス/アセンブリ内にある必要はありません。仕事の流れが住んでいるプロジェクトがEnumが住んでいるものを参照できる限り、あなたは大丈夫でしょう。
ifブランチをクリックし、プロパティを選択します。条件ボックスをクリックし、* Declarative Rule Condition *に変更します。あなたの条件に名前をつけて、通常のコードのようにIf式をExpressionボックスに入力します。