25. ブックマークのコード
Protected Overloads Overrides Sub Execute(
ByVal context As System.Activities.NativeActivityContext)
Dim bookName = context.GetValue(Me.BookmarkName)
If bookName.Trim = "" Then Return
context.CreateBookmark(bookName,
New BookmarkCallback(AddressOf OnResume))
End Sub
‘‘‘ <summary>ブックマークから呼ばれるコールバック</summary>
Private Sub OnResume(
ByVal context As NativeActivityContext,
ByVal bookmark As Bookmark, ByVal value As Object)
context.SetValue(Me.HostedValue, value)
End Sub
ブックマーク名はワークフローの中で
一意でなくてはならない
2014/03/01 CLR/H in TOKYO #1 Re-Venge
28. 引数の受け渡し
ワークフロー開始時にホスト側から
引数を受け渡せる
Dim wfApps As WorkflowApplication
Dim wfArgs = New Dictionary(Of String, Object)
wfApps = New WorkflowApplication(wfFile, wfArgs)
wfApps.Run()
Dictionary(String, Object)
Args1:引数名(大小文字の区別あり)
Args2:引数
2014/03/01 CLR/H in TOKYO #1 Re-Venge
39. まとめ
• WF を利用するのは簡単
• アイデア次第で使える場面も
• コードで書くのではなく
デザイナーで組み合わせる
• 使うのは開発者じゃない!
2014/03/01 CLR/H in TOKYO #1 Re-Venge
40. Appendix
• Workflow Designer Express
(http://wfdesignerexpress.codeplex.com/)
• The Activity Designer
(http://blogs.msdn.com/b/tilovell/)
• AppFabric Team Blog
(http://blogs.msdn.com/b/appfabric/)
• MS 松崎さん Blog
(http://blogs.msdn.com/b/tsmatsuz/)
2014/03/01 CLR/H in TOKYO #1 Re-Venge