問題タブ [workflowservice]
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.
servicebus - .NETサービスとは何ですか?
本日、PDCで発表されました。当初は、サービスバス、ワークフローサービス、およびアクセス制御サービスで構成されていました。彼らは何ですか?なぜ私はそれらを使うのでしょうか?
workflow-foundation - WF4 ワークフロー サービスの単体テスト
WF4 ベータ 2 をいじっていて、ワークフロー サービスの単体テストを行いたいと考えています。おそらく私は何かを見逃していますが、これは些細なことではないようです。
私が見る限り、私は使うかもしれませんWorkflowServiceHost
。しかし、これはホストを作成してテストで使用するためのオーバーヘッドが大きいと思います。
と同じように、ワークフロー サービスをテストする簡単な方法はありませんWorkflowInvoker.Invoke
か?
sharepoint - 承認後の SharePoint アイテムのロック
5 つの列を持つ sharepoint カスタム リストがあります。ユーザーは最初の 3 つの列に入力し、他の 2 つの列は入力のためにロックする必要があります。ユーザーが項目を入力し、ワークフローが承認された場合にワークフローを開始すると、3 つの列は編集用にロックされていると、他の 2 つは編集できるようになります。
どうすればこれを達成できるか教えてください。
ありがとう
c# - WorkflowServiceHostを使用したワークフローのホスティング
わかりました。これに間違ってアプローチしている可能性がありますが、基本的には、4.0で新しいWFサービスを試して、WFサービスをホストするWindowsサービスを構築しようとしています。現時点では、クライアント(単純なアクティビティXAMLを含む)およびサービス(XAMLXファイルに実装されたWFサービス)プロジェクトを構築しました。
それぞれに簡単な「HelloWorlds」を試してみました。クライアントはでホストされており、WorkflowApplication
最初にサービスをデフォルトのWFサービスプロジェクトテンプレートとして設定しました。どちらも問題ないようです。
IISなしでサービスをホストしたいので、当然、次の試みはでサービスをホストすることでしたWorkflowServiceHost
。これを行うことで、エンドポイントのURIとともに、XamlServices.Load()
返されるオブジェクトを使用してコンストラクターに渡すことができます。クラスにあるようなメンバーメソッドWorkflowServiceHost
がないので心配でした。このメソッドはサービスホストオブジェクトをサービスとして開き、ワークフローのインスタンスを開始すると想定しましたが、その兆候はありません。Run()
WorkflowApplication
Open()
最初は、開始時にテキストファイルに書き込むようにサービスワークフローを設定しましたが、何も起こりませんでした。ブレークポイントを使用してデバッグしようとしましたが、実行時にXAMLXファイルをロードしているため、VSではWFをデバッグできません。そこで、クライアントプロジェクトを少し変更して、のWorkflowServiceHost
代わりにを使用してみましたWorkflowApplication
。hello worldスタイルのワークフローをテストするために使用したのと同じワークフローを使用しましたが、今回はコンソールへの出力がなくWorkflowApplication
、以前は成功していました。
これが、コンソールプロジェクトでワークフローサービスをホストするためにクライアントで行ったことの非常に基本的なことです。ワークフローのXAMLを確認したい場合は、お知らせください。この質問を更新します。のホスティングコードは次のとおりですMain()
。
.net-4.0 - ワークフローサービスホストがメタデータを公開していません
IISの外部でホストされているWFサービスでは、依然として極端な永続性でハッキングされています。WFサービスのメタデータ発行で問題が発生しています。誰かが私のコードを見て、私が欠けているステップを確認できますか?私のシナリオで偶然見つけたいくつかのチュートリアルは、それをとても簡単に見せてくれます、そして私はそれがそうであることを知っています。ばかばかしいほど単純なものが欠けています。これが私の現在のトライアルコードです:
Subscribe()は、xamlファイルにコード化されたアクティビティであり、ホストされたワークフローサービスをテストするための単純な受信および送信応答アクティビティが含まれています。xamlx(WFサービス)ファイルではありません。これは動作するのに十分単純なはずですが、アプリケーションを起動してサービスが起動すると、URIに移動するとブラウザに次のメッセージが表示されます。
「このサービスのメタデータ発行は現在無効になっています。」
デフォルトのエンドポイントを追加すると、サービスの初期化を満たしてからメッセージ待機状態に入るのに十分なメタデータと説明が提供されるべきではありませんか?
c# - 複数のクライアントからシングルトン WF サービスへ
Windows ワークフロー サービスでは、1 つのサービスに対して複数のクライアントを使用できますか? 基本的に私がやろうとしているのはこれです:クライアントが「サービスにサブスクライブ」できるようにするWFサービスを構築し、特定のイベントがハンドラーをトリガーすると、データを各クライアントにブロードキャストします。したがって、基本的に何かがバックグラウンドで処理され、サービスが小さな文字列を受信すると、その文字列がコールバックを介して各クライアントにブロードキャストされます。
したがって、最初に把握する必要があるのは、世界に公開されている Subscription() メソッドを備えたサービスがあり、3 つのクライアントがそのメソッドを呼び出すと、コールバック エンドポイントと実装に関する情報を保存して、将来のデータのために保持することです」ブロードキャスト"; これらすべてを 1 つの WF サービスで実行できますか? その場合、ブロードキャスト コールバック中にクライアントを参照するにはどうすればよいですか?
scope - DoWhileアクティビティでワークフローサービス(4.0)変数がnullになるのはなぜですか?
「購読」と「購読解除」の受信アクティビティを設定しようとしているWFサービスがあります。私のサービスはクライアントへのコールバックを実行するため、このWFDurableDuplexチュートリアルをベースとして使用しています。基本的にはチャットサービスと考えてください。
2つの受信アクティビティへのクライアント呼び出しは問題なく行うことができます。クライアントのコールバックアドレスがサービスのSubscribe()に渡されます。アドレスはWFサービスに変数として格納され、すべてが期待どおりに機能するように見えます。
クライアントがUnsubscribe()を呼び出すと、デバッグ中にアドレスvarに設定した時計はそれをとして表示しnull
ます。では、何が得られるのでしょうか?
これが私のWFサービスレイアウトの基本的なセットアップです...
すべてがDoWhileアクティビティに包まれています。その中には、Pickアクティビティと2つのPickブランチがあります。最初のブランチは、アクティビティをサブスクライブするためのものです。クライアントから渡された文字列をWFアドレス変数に割り当てるreceive-sendreplyアクティビティがあります。2番目のブランチは、サブスクライブ解除を処理します。トリガーはリクエストアクティビティであり、クライアントアドレスが再び渡されます。
そこから、Ifで始まるシーケンスに入ります。すでにサブスクライブされているunsubscribeAddress
ものと等しいかどうかを確認します。address
含まれている場合は、に設定しaddress
、String.Empty
成功メッセージをクライアントに送り返します。
エンベロープするDoWhileアクティビティにスコープされた変数が、暗黙的にnullに割り当てられるのはなぜですか?これを機能させて、そこから複数のクライアントサブスクライバーを実装し、複数のクライアントへのコールバックを呼び出すトリガーを処理できるようにしようとしています。
CONCAT EDIT: DoWhileレベルでブレークポイントを設定しましたが、呼び出されるとvarはnullになりますUnsubscribe()
。がSubscribe()
呼び出されると、ウォッチはvarの値を最後まで表示します。Unsubscribe()
私がクライアントと一緒になるまで。代わりにWhileアクティビティを使用する必要がありますか?
rest - .NET4.0を使用したRESTフルワークフローサービス
WCFを使用すると、レバレッジHTTP POSTを受け入れ、パラメーターとしてXElementを単純に受け入れることができるサービスを作成できます。jQueryを使用してxml情報セットをサービスに投稿し、一連のルールを実行してからxml情報セットを返すことができるように、ワークフローサービスで同様のことを行いたいと思います。
WCFサービスを使用すると、WebInvokeを使用して操作を簡単に装飾し、楽しい道を進むことができます。ワークフローサービスを使用してWebInvokeを使用することは可能ですか?その場合、どのようにすればよいですか?
workflow-foundation-4 - ワークフローの一時停止
次のことを行うサンプル ワークフローがあるとします。
- 何かを受け取る
- 長いアクティビティ 1 を実行します (ユーザー入力なし)
- 長時間のアクティビティ 2 を実行 (ユーザー入力なし)
- 何かを送る
通常は、アクティビティ 1 が終了した後にアクティビティ 2 が自動的に実行されるはずですが、ワークフローがユーザーから承認されるまで、アクティビティ 2 の実行を防止したいと考えています。activity1 が実行されている間、アクティビティ 1 が完了したら一時停止し、アクティビティ 2 を続行するようにワークフローに指示できるようにしたいと考えています。
アクティビティ 2 を実行する前にワークフローがチェックできるフラグが必要だと思いますが、アクティビティ 1 の実行中にこのフラグを更新するにはどうすればよいですか?
ありがとう
wcf - msmqIntegrationBinding でワークフロー サービスを使用する
msmqIntegrationBinding を使用するワークフロー サービスの設定に苦労しています。私が今抱えている問題は、このシリアライゼーション例外が常に発生することです。 MSMQ メッセージの XML 本文の逆シリアル化中に、メッセージを受信できません。サービス コントラクトが適切な [ServiceKnownType] 属性で装飾されているか、MsmqIntegrationBindingElement に TargetSerializationTypes プロパティが設定されていることを確認してください。
私が理解している限りでは、サービス コントラクトとワークフローの両方でジェネリック型MsmqMessage<MyMessageType>を使用しているにもかかわらず、シリアル化ヘルパーはメッセージをシリアル化する型を見つけることができないということです。
MyMessageTypeは、xsd.exe を使用して .xsd から生成されます。
更新: 問題 は解決しましたワークフローで行うのではなく、コントラクト (インターフェイス) で WCF (Action、ServiceKnownType...) のすべての設定を行いました。ワークフローに移動すると、すべてが機能し始めました!!