【问题标题】:sharing methods across 2 service layers跨 2 个服务层共享方法
【发布时间】:2012-04-20 08:28:18
【问题描述】:

我正在使用 MVC3 和实体框架开发应用程序。我为具有一个相似性的两个实体提供服务层。

这两个服务是 DurationService 和 FieldService。前者处理 Days 和 daysettings 列表。这些设置包含有关每天时间段的信息(开始时间、结束时间、可能的休息时间列表)。后一个服务处理字段列表和字段设置。这些字段设置用于确定字段可用性。

两个服务都需要检查休息时间是否重叠。我为 DurationService 编写了此代码,但现在注意到 FieldService 需要完全相同的方法。我不想违反 DRY 原则,所以我的问题是,我该如何最好地处理这个问题?

我是否创建一个两个服务都可以调用的静态类?我是否使用某种继承(即使这种方法是他们将共享的唯一方法)。

【问题讨论】:

    标签: asp.net-mvc-3 entity-framework service-layer


    【解决方案1】:

    看起来架构正在阻止您做明显正确的事情。不要让这种情况发生。

    继承可能不是正确的解决方案。一个静态助手类就可以了。简单的问题需要简单的解决方案。

    【讨论】:

      猜你喜欢
      • 2018-03-16
      • 2017-01-04
      • 2017-10-08
      • 2017-06-29
      • 1970-01-01
      • 1970-01-01
      • 2019-11-19
      • 2018-10-18
      • 1970-01-01
      相关资源
      最近更新 更多