WWF,它改变了Coding的一个观念。那就是以后写代码不在是纯粹对代码进行编写,而是对业务流程编写,业务流程代替了代码流程。一个人对业务流程越熟悉,那么他写出的代码的效率就越高。这里说的效率不是代码执行效率,而是生产效率。
这里是我的第一个WWF尝试,用来和大家分享。
首先、建立一个序列活动项目:

如果你是安装了VS2005中文版的话,那么你的WorkFlow将不会显示出来,可以到
C:\Program Files\Microsoft Visual Studio 8\Common7\IDE下把相应的WorkFlow的Template的路径改为2052。
然后在VS Tool的命令行下运行devenv /setup来安装配置。
其次、制作活动流程,并为流程编写代码。
我制作了一个流程是:判断一个值和500的关系。值默认为0,首先判断结果是小于500。我们可以从命令行中输入值。程序判断值与500的关系,输出结果。如果值为负数,则停止程序。

这里我分别用一个While流程和一个IFElse流程来实现。While来判断看是否小于0,如果小于0,则退出While。IFElse来判断与500的关系。两部分代码块如下:

namespace WFApp
{
    
public sealed partial class WFDesign: SequentialWorkflowActivity
    
{
        
private int myValue = 0;

        
public WFDesign()
        
{
            InitializeComponent();
        }


        
public int Value
        
{
            
get {
                
return myValue;
            }

            
set {
                myValue 
= value;
            }

        }
        

        
private void codePrintLess_ExecuteCode(object sender, EventArgs e)
        
{
            Console.WriteLine(
"Value is less than 500");
            Console.WriteLine(
"请输入一个整型数字,小于0将退出");
            
this.Value = Convert.ToInt32(Console.ReadLine());
        }


        
private void codePrintMore_ExecuteCode(object sender, EventArgs e)
        
{
            Console.WriteLine(
"Value is more than 500");
            Console.WriteLine(
"请输入一个整型数字,小于0将退出");
            
this.Value = Convert.ToInt32(Console.ReadLine());
        }

    }


}
While和IFElse的条件在Activity的属性里面填写。
最后的运行结果如我所料。其结果如图:


第一个WWF很顺利。看来WWF并没有我先前想象的那么难,第一次在BizTalk见到它的时候都快被它复杂吓着了(应该是BizTalk的复杂,所以淹及鱼池,以为WorkFlow也很复杂)。现在看起来越来越亲切了。