c# - 如何区分逻辑上命名相同的命令模式中的包装层?

标签 c# architecture command-pattern

我有这个界面...

public interface ICheckThatDocumentExistsCommand
{
   bool Execute( string userId, string docId );
}

在实现中,我只想验证两个id,如果有效,返回另一个接口(interface)的结果...

public interface ICheckThatDocumentExistsCommand
{
   bool Execute( UserId userId, DocumentId docId );
}

我想在同一个业务域程序集中定义接口(interface),但我很难决定如何区分这两个(或更多)层。从逻辑上讲,我认为它们的名称即使不相同也很相似,所以我不能将它们放在同一个命名空间下。我是否通过命名空间分开? “验证”命名空间和“其他”命名空间?或者我是否将已经冗长的名称扩展为有点荒谬的东西,例如...

public interface IValidateIdsAndThenCheckThatDocumentExistsCommand

随着我保持函数的小型化和单一用途,我看到这种情况越来越多。

最佳答案

好吧,它的实现类正在弄清楚如何处理参数....所以为什么不让实现类确定和验证类型....

public interface ICheckThatDocumentExistsCommand
{
  bool Execute<t1,t2>(t1 userID, t2 docId);
}

关于c# - 如何区分逻辑上命名相同的命令模式中的包装层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7668420/

相关文章:

ios - 框架架构 : Specify NSBundle to load . 来自单例初始化期间的 plist 文件

javascript - 设计和构建多角色 ReactJS 应用程序

c# - 我应该使用命令模式而不是调用静态方法吗?

java - 命令设计模式简单的 GUI 空指针

使用map进行多次调用的Java流检查结果

如果超时失败,C# 重试 Sql 查询

c# - 我是否必须取消订阅局部变量的匿名事件处理程序?

django - 如何确保 Django REST API 的幂等性?

c# - ASP.NET:由Nuget引起的.NET Framework/Standard/Core DLL冲突。 “您必须添加对程序集System.Runtime的引用...”

c# - 通过其中的子节点值定位 XML 节点,并更改另一个值