1

私はVBでワークフローとダミーの新機能を使用していますので、弱い疑問があれば申し訳ありません。私はこのような使用してブロックを実装しようとしているWF 4で `Using`ブロックを使用できますか?

シーケンス

using (var db = new Dal.DataContextProxy()) 
{ 
    //My Codes 
} 

を、私が使用してブロック内のDBを開始します。私はどうしたらいいですか?私は割り当てを試みたが、それはブロックを使用してを使用することができないようだ。

ありがとうございます。

答えて

3

標準のアクティビティを使用することはできませんが、dbを子供に公開するアクティビティを作成することは難しくありません。おそらく、SqlConnectionが開いているブロックの途中でワークフローの状態を保持して再ロードできないため、ワークフローの永続性について考えるようにしてください。

+0

ありがとう、モーリス。さて、入力引数としてdbをアクティビティに渡す方が良いと思います。何を指示してるんですか? –

+0

アクティビティを使用するための入力を意味しますか?もちろん問題ありません。入力式を取って本文に暴露するForEachと構造が非常に似ているアクティビティを作成し、本文が終了したら入力にDispose()を呼び出します。そうすれば、必要に応じて新しいオブジェクトを作成したり、既存のオブジェクトを渡すことができます。 – Maurice

1

documentations and samplesで説明されているように、自分自身のNativeActivityを実装して、完全/フォルトハンドラの接続を閉じることができます。あなたの特定のシナリオでは、Mauriceの言ったように、ExecutionPropertiesでDataContextProxyを公開する必要があります。

類似したもの(シナリオに該当するもの)は既に行われており、this Rory Primrose's blog postで確認できます。

関連する問題