SharePoint アドイン製品一覧
SharePoint 2010 開発のステップ・バイ・ステップ
Windows Azure 入門
Windows Azure How-To 集
WCF / WF 入門
2007/08/16 Update: 実際にこの精神で作成したサンプルコード (sample code) を以下に掲載しました。http://blogs.msdn.com/tsmatsuz/archive/2007/08/16/wf-web-part-1.aspx
こんにちは。
昨日は、MSDNオフラインセミナー「.NET Framework 3.0 によるサーバアプリケーションの開発」にご参加された皆様、お疲れ様でした。
昨日のセミナーの最後でふれましたが、ワークフローはフレームワーク的にさまざまな箇所で応用できますが、ワークフローを使ってWebの画面をコントロールすることは大変難しいという点をご説明しました。画面遷移などをワークフローで作成できたなら、業務ルールの変更に伴い画面のロジックが変更される場合などにおいても、モデル駆動で対応することができるようになり、大変強力です。今日は、その方法について記載したいと思います。
あらかじめ記載すると、上述した通り、この点に関しては残念なことに一筋縄にはいきません。(今後、何某かの形で下記のような処理をラッピングした便利な仕組みが登場してくることでしょう。) いつものように簡単なサンプルを作成してコードをご紹介しても良いのですが、なかなかそこまで時間もとれないので、申し訳ありませんが、どのような処理概念で、どんなところをポイントに作成するかといったところを以下に手順を追ってご説明します。
前提知識として、Windows Server 2008 の Developer Center の 「ワークフローの作成とランタイムサービス (EDS, 永続化サービス) の利用」でご紹介しているレベルの WF (Windows Workflow Foundation) の知識は必要になりますので、まだこれからという方は、まずはこれらの情報を参考にして WF のイメージをつかんだ上で参考にしてください。
<構成イメージ> (2007/06/08 わかりづらいため図挿入しました)
[ワークフロー側の作成]
[ホストアプリケーション (ASP.NET) 側の作成]
無論、永続化サービスも登録しておきましょう (HTTP で毎回処理が途切れるため、セッションなどを使わなければ、基本はステートレスです)。また余談ですが、ランタイム作成で、必要な設定は、web.config などに外だしすることもできます。この web.config のコードは、ワークフローをWebサービスとして発行すると作成されますので、是非参考にしてみてください。(WebServiceInput アクティビティや WebServiceOutput アクティビティを持つワークフローを作成して、[Publish as Web Service] を選択すると作成できます。) ちなみに、この場合でも、ワークフロー作成時は、いつも通り new WorkflowRuntime ですが、コンストラクタの引数に構成の名前を指定します。(このコードは、System.Workflow.Activities.WorkflowWebService クラスの CurrentWorkflowRumtime プロパティなどを逆コンパイルすると同様のことをおこなっているのがわかります。)そして、この web.config の仕組みを使って、永続化サービスの追加など、必要なサービスの追加も指定することができます。
WF (ワークフロー) を使った Web ページ (ASP.NET) の画面遷移 WFは気になってるんですけどねぇ。まだちゃんと動かしたりしてないんですよねぇ。そんななかで、マイクロソフトのエバンジェリストの松崎さんがASP.NETでWFを利用するための考え方をまとめてくださってます。...
こんにちは。 以前、Web ページ (ASP.NET ページ) の画面遷移を WF で実装する場合の例について記載しましたが( こちら )、今回は WF を使った実践的アプリケーションの1つとして、SharePoint