⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 begin.cs

📁 C#写的工作流测试实例,适合刚接确工作流的程序员参考实例.
💻 CS
字号:
using System;

namespace Test
{

	public class begin
	{
		
		static void Main()
		{
			wfTest.wfEngine 引擎=new wfTest.wfEngine();

			一个工作流 obj1=new 一个工作流("12345");
			一个工作流 obj2=new 一个工作流("12347");

			引擎.AddInstance(obj1);
			引擎.AddInstance(obj2);
			引擎.AutoExecute(obj1.InstanceID);
			引擎.AutoExecute(obj2.InstanceID);

			System.Console.Read();
		
		}
	}



	class 一个工作流:wfTest.wfTemplet
	{
		public 一个工作流(string InstanceID)
			:base(InstanceID)
		{
			/*
			 *          结点A
			 *            |
			 *            |
			 *          结点B 
			 *    (true)/   \(false)
			 *         /     \
			 *     结点C    结点D
			 *        \      /
			 *         \    /
			 *         结点E
			 */      



			//结点A:代码结点
			wfTest.codeNode 结点A =new wfTest.codeNode(this.InstanceID,"结点A");
			结点A.Code+=new wfTest.codeMethod(结点A_Code);
			结点A.CodeParameter="hello wf";

			//结点B:条件结点
			wfTest.conditionNode 结点B=new wfTest.conditionNode(this.InstanceID,"结点B");

			//结点B的条件表达式
			wfTest.conditionExpression 条件表达式=new wfTest.conditionExpression();

			条件表达式.leftExpression="123";//条件表达式左值
			条件表达式.rightExpression ="1234";//条件表达式右值

			结点B.expression=条件表达式; //绑定条件表达式到结点B


			//结点C:代码结点
			wfTest.codeNode 结点C =new wfTest.codeNode(this.InstanceID,"结点C");
			结点C.Code+=new wfTest.codeMethod(结点C_Code);
			结点C.CodeParameter="i am 结点C,条件的真结点";
		
			//结点D:代码结点
			wfTest.codeNode 结点D =new wfTest.codeNode(this.InstanceID,"结点D");
			结点D.Code+=new wfTest.codeMethod(结点D_Code);
			结点D.CodeParameter="这是_结点D,条件的假结点";

			//结点E:代码结点
			wfTest.codeNode 结点E =new wfTest.codeNode(this.InstanceID,"结点E");
			结点E.Code+=new wfTest.codeMethod(结点E_Code);
			结点E.CodeParameter="完成了";


			//指定入口结点
			this.CurrentNode=结点A;
			
			//设置结点关系
			结点A.NextNode =结点B;
			结点B.NextNode =结点C;
			结点B.ElseNode =结点D;
			结点C.NextNode =结点E;
			结点D.NextNode =结点E;
	
		}

		//结点A:代码
		private void 结点A_Code(wfTest.wfNode sender, object data)
		{
			System.Console.WriteLine(sender.InstanceId + ":" + sender.NodeId + ":" + data.ToString());
		}

		//结点C:代码
		private void 结点C_Code(wfTest.wfNode sender, object data)
		{
			System.Console.WriteLine(sender.InstanceId + ":" + sender.NodeId + ":" + data.ToString());
		}

		//结点B:代码
		private void 结点D_Code(wfTest.wfNode sender, object data)
		{
			System.Console.WriteLine(sender.InstanceId + ":" + sender.NodeId + ":" + data.ToString());

		}

		//结点E:代码
		private void 结点E_Code(wfTest.wfNode sender, object data)
		{
			System.Console.WriteLine(sender.InstanceId + ":" + sender.NodeId + ":" + data.ToString());

		}
	}



}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -