2012-04-06 87 views
3

我正在开发一个应用程序与MVC3和实体框架。我有两个实体具有一个相似性的服务层。跨2个服务层共享方法

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

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

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

回答

1

看起来建筑正在阻止你做明显正确的事情。不要让这种情况发生。

继承可能不是正确的解决方案。一个静态辅助类将会做。简单的问题需要简单的解