Example #1
0
        static void Main(string[] args)
        {
            // 表示一个具体的项目名字叫:项目A
            WebProject wpA = new WebProject() { ProjectName = "项目A" };
            // 表示一个具体的项目名字叫:项目B
            WebProject wpB = new WebProject() { ProjectName = "项目B" };
            // 开发者
            Developer developer = new Developer() { DeveloperName = "张三" };

            // 开发者所需要接收的命令
            ICommand codeCmd = new CodingCommand() { project = wpA, dp = developer };
            ICommand UpdateCmd = new UpdateRoutineCommand() { project = wpB, dp = developer };

            //项目经理
            ProjectManager pm = new ProjectManager();
            //设置命令
            pm.SetCommand(codeCmd);
            pm.SetCommand(UpdateCmd);
            //发起命令让开发者去完成
            pm.ExcuteCommand();

            Console.WriteLine("========== 可取消 ==========");

            // 开发者
            DeveloperCancelAble developer2 = new DeveloperCancelAble() { DeveloperName = "李四" };

            //开发者所需要接收的命令
            ICommandCancelAble codeCmd2 = new CodingCommandCancelAble() { project = wpA, dp = developer2 };
            ICommandCancelAble UpdateCmd2 = new UpdateRoutineCommandCancelAble() { project = wpB, dp = developer2 };

            //项目经理
            ProjectManagerCancelAble pm2 = new ProjectManagerCancelAble();
            //设置命令
            pm2.SetCommand(codeCmd2);
            pm2.SetCommand(UpdateCmd2);
            //发起命令让开发者去完成
            pm2.ExcuteCommand();
            //撤销UpdateCmd命令
            pm2.CancelExectueCommand(UpdateCmd2);

            Console.ReadLine();
        }
Example #2
0
 /// <summary>
 /// 运维项目
 /// </summary>
 /// <param name="project">项目</param>
 public void UpdateRoutine(WebProject project)
 {
     Console.WriteLine("{0} 维护 [{1}] 项目", DeveloperName, project.ProjectName);
 }
Example #3
0
 /// <summary>
 /// 运维项目
 /// </summary>
 /// <param name="project">项目</param>
 public void UpdateRoutine(WebProject project)
 {
     Console.WriteLine("{0} 维护 [{1}] 项目", DeveloperName, project.ProjectName);
 }
Example #4
0
 /// <summary>
 /// 开发项目
 /// </summary>
 /// <param name="project">项目</param>
 public void Coding(WebProject project)
 {
     Console.WriteLine("{0} 开发 [{1}] 项目",  DeveloperName,  project.ProjectName);
 }
Example #5
0
 /// <summary>
 /// 开发项目
 /// </summary>
 /// <param name="project">项目</param>
 public void Coding(WebProject project)
 {
     Console.WriteLine("{0} 开发 [{1}] 项目", DeveloperName, project.ProjectName);
 }