我想发出一系列命令执行,但只有在先前的命令成功时才执行。现在我在命令对象中引发一个事件,指出命令是成功还是失败。我正在使用它来控制执行,但它感觉不雅。命令模式:按顺序执行多个命令
例子:
command1.CommandSucceeded += delegate { command2.Execute(); };
command1.Execute();
这工作,但感觉笨拙,不直观。我可以在Execute()上传递一个布尔值来指示成功或失败,但是这是沿着相同的路径。我可以在失败时抛出异常,这可能会导致更干净的代码,但可能是矫枉过正。
有什么建议吗?
是责任链模式在这里很有用。 – pjp 2009-08-26 22:18:14
不知道它被称为那个。谢谢(你的)信息。 – 2009-08-26 22:33:18
责任链模式似乎很适合。感谢您的回应。 – Josh 2009-08-26 23:13:16