命令模式用于返回数据

时间:2012-10-09 15:30:26

标签: c# design-patterns solid-principles

我正在开发一个应用程序,并试图遵循Robert C. Martin的SOLID原则。我正在使用命令模式,我想知道实现。在C#中的清洁代码和敏捷原则,模式和实践的所有示例中,他的命令对象永远不会返回任何内容。他的命令界面是;

public interface Command
{
  void Execute();
}

所有的例子都是“AddEmployee”,“DelEmployee”,“EditEmployee”等。我是否会有一个“GetAllEmployees”的命令,或者我是否会为此特定目的创建一些其他特殊的“Interactor”?我正在考虑处理这个特定情况的一种方法是让两个接口像上面那样非泛型,像这样的通用接口;

public interface Command<T>
{
  T Execute();
}

我要问的是,这是否是这种模式的可接受实现,还是我们有另一种方式从应用程序访问数据?

1 个答案:

答案 0 :(得分:5)

命令可以改变状态(更新,删除或添加)。

获取数据(而不是更改数据)时,您将使用查询

另请参阅CQS和相关的CQRS