問題タブ [workflow-foundation]

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 に答える
2050 参照

sharepoint - Sharepoint ワークフロー対。WFF

タイトルはあまり正確ではありません。現在、複数のユーザーがデータを入力できるサイトへの追加を開発しています。人々は特定の順序でデータを入力するため、WFF を使用する必要がある/使用したい。お客様苦情フォームです。セールスマンが最初のフォームに記入し、苦情を提出します。苦情は審査され、却下されるか、調査セグメントに移されます。最後に、苦情は処理され、クローズされます。

私のジレンマは、Sharepoint も実装していることです。両方のプロジェクトの期限はほぼ同じです。最終的に、Sharepoint が私たちの唯一の Web サイトとなり、苦情プロジェクトは Sharepoint に移動しました。

Sharepoint が導入されるまで待ってから、顧客の苦情プロジェクトを進めたいと思います。後で実装するのではなく、最初からワークフローを含めるように SharePoint プロジェクトを再編成する必要があります。

何か考え、提案、コメントはありますか?

0 投票する
4 に答える
569 参照

workflow-foundation - WorkflowInstance を複数回実行する

持っている場合、WorkflowInstance2回続けて実行できますか?

これを行うと、永続化サービスが構成されていないことを示す例外が発生します。ただし、私の質問は次のとおりです。一度実行した後WorkflowInstance、インスタンスをもう一度実行できますか、それとも使用できなくなりますか? 実行するたびに別のインスタンスを作成する必要がありますか?

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

workflow - 実行時の WF 検証エラー

正常にコンパイルされる 2 つのワークフロー基盤 (.NET 3.5 SP 1) アプリケーションがあります。2 つの宣言ルール条件が含まれています。どちらも非常に単純な例です:
- !this.Shutdown - this.Runtime == null

プロジェクトはエラーや警告なしで正しくビルドされますが、アプリケーションを実行すると次の例外で失敗します。error 1342: Activity 'whileNotShutdown' validation failed: Can not find the condition "Shutdown not requested".

他のアプリケーションでは、次の例外を生成するポリシーでより複雑なルールセットを使用しています。error 1398: Activity 'Defaults' validation failed: Can not find the rule set "Rule Set1". Check if rule set is defined in the rules file.

.rules ファイルを削除し、2 つのルールを再作成して再作成しようとしましたが、解決しませんでした。

問題は、このエラーの原因は何ですか?

私が試したいくつかのこと:

  • ワークフロー ルールをより大きなワークフローに配置しても、問題に違いはありません。
  • この問題は、現在、ソリューション内のすべてのワークフローに影響を与えています (以前は機能していたものも含む)。
  • Code Rule 条件を使用しても同じ問題は発生しません。この問題は何らかの形で規則ファイルに関連しています。
  • ワークフローの再構築は役に立たなかった
0 投票する
1 に答える
394 参照

c# - WF 永続ポイント トランザクションの制御

私は WF を使用しており、トランザクションと永続性をサポートする必要があります。TransactionScopeActvity を使用せずに、独自のトランザクション スコープ オブジェクトを使用し、アクティビティ自体のトランザクションの一部となる永続ポイントを最後に保持したいと考えています (TransactionScopeActivity がこの側面でどのように機能するかに似ています)。「PersistOnClose」属性を使用して、トランザクションの最後に永続ポイントを達成できますが、永続呼び出しはどのトランザクションに属しますか? 新しいトランザクションを開くか、それともアンビエント トランザクションを探すか? 永続性ポイントがアクティブ化されたときに、アンビエント トランザクションが存在することをどのように保証できますか?

0 投票する
6 に答える
13627 参照

c# - Windows ワークフローを使用する理由

Windows Workflow Foundation (WF) を使用することと、独自のワークフロー フレームワークを展開することの利点は何ですか?

私が知る限り、WF はワークフローを定義するための、必要最小限のランタイム エンジン、一連のクラス、およびスキーマ (XAML ベース) のみを提供します。持続性、ランタイムのホスト プロセスの提供、(プロセス間での) 分散ワークフローの実装など、すべての難しい作業はユーザーに任されています。

さらに、WF の使用には学習曲線が必要です...独自のワークフロー フレームワークを作成した場合、すべての開発者が既に持っているスキル (C#、XML、SQL など) を活用するだけです。

WF を使用する理由を説明しようとする MS エバンジェリストのブログを見ました。

なぜワークフローなのか...

IMO は、「開発者の生産性」を向上させると述べているだけで、開発者が自分で開発できることを認めているため、説得力がありません。

ここにいる頭のいい人なら、これ以上の理由を思いつくことができるでしょうか?

以下の回答の要約:


最も説得力のある理由は、WF などの標準化されたワークフロー プラットフォームを使用することで (自分で作成するのではなく)、MS やサード パーティが提供する Visual Designer などの現在および将来のツールを活用できるようになることです。

また、.NET ベースのテクノロジの MS スタックの一部であるため、将来の MS テクノロジ (Azure など) との統合/移行パスが改善される可能性があります。

最後に、WF の経験を持つ開発者の数が増加し (キャリア的に有利になるため)、SQL や HTML などの基本的なコモディティ スキルに変わります。最小限の立ち上げ時間。

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

visual-studio-2008 - Visual Studio 2008 で Windows ワークフロー テンプレートを取得する方法は?

私は.NET 3.5 で Pro WF Windows Workflowという本を読んでいます。5 ページでは、Visual Studio 2008 で新しいプロジェクトを開くことが示されています。「Visual C#/Workflow」が選択され、8 つのテンプレートが表示されています。

  • 空のワークフロー プロジェクト
  • シーケンシャル ワークフロー ライブラリ
  • SharePoint 2007 ステート マシン W...
  • ステート マシン ワークフロー ライブラリ
  • シーケンシャル ワークフロー コンソール アプリケーション
  • SharePoint 2007 シーケンシャル ワークフロー
  • ステート マシン ワークフロー コンソール アプリケーション
  • ワークフロー アクティビティ ライブラリ

ただし、私の(ドイツ語)Visual Studio 2008では、SP1をインストールした後でも、ワークフローの下に次のものがあります。

  • Sequenzieller SharePoint 2007-ワークフロー
  • SharePoint 2007 の状態コンピューターのワークフロー

そしてWCFの下で私は見つけました:

  • 順次ワークフロー サービス ライブラリ
  • ステート マシン ワークフロー サービス ライブラリ

しかし、この本で言及されている Visual Studio 2008 ワークフロー テンプレートを入手するにはどうすればよいでしょうか。

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

c# - Windows ワークフロー (WF) で Name-itis を回避するにはどうすればよいですか?

私は WF を使い始めたばかりですが、非常に多くの名前を付けなければならないのが本当に面倒です。IMO、プログラマーが毎日取り組む最も難しいことの 1 つは、物事に適切な名前を付けることであり、WF はこれを極端に行っているようです。

たとえば、WF IfElse アクティビティを見てみましょう。これを生の C# (WF を使用しない) でコーディングすると、次のようになります。

上記の C# コードはシンプルで簡潔です。対照的に、IfElse アクティビティを使用して同じことを行う Windows ワークフローを定義する場合、最初にすべての if ブロックに名前を付ける必要があります

  • ifXEquals0
  • ifXLessThan10
  • ifXLessThan100

その上、すべての if ステートメントで各条件に名前を付ける必要があります。

  • xEquals0
  • xLessThan10
  • xLessThan100

これは面倒なだけでなく、保守が難しく (条件が変わった場合など)、エラーが発生しやすくなります (条件が変わったときに名前を変更するのを忘れる)。

(私が知る限り) 問題は、WF がすべてのプログラミング構造をワークフローのプロパティに分解することです。これには名前が必要です。

私はまだ WF を学んでいるので、すべてを知っているように聞こえたくありません... 皆さんにお聞きしたいです。私は何か間違ったことをしていますか?WF ワークフローを作成するときに、この名前付けを回避する方法はありますか? これは Windows WF に固有のものですか、それとも他のワークフロー エンジンでも同じ問題が発生しますか?