【发布时间】:2015-03-05 06:56:01
【问题描述】:
我想知道在 CQRS 上使用名为 DRY(不要重复自己)的设计原则规则。
我有 2 种几何表,名为 WaterPipes,GasPipes。
public GasPipe{ id, Name, Length, .... }
public WaterPipe{ id, Name, Length .... }
所以我是使用 CQRS 的新手。我想创建一个查询来获取它们的总长度。
数据库查询将类似。
Select Sum(Length) From GasPipes,
Select Sum(Length) From WaterPipes
那么现在我可以创建一个查询吗?
public class PipeLengthQuery { }
public class PipeLengthQueryHandler {
if(water) Select Sum(Length) From WaterPipes
if(gaz) Select Sum(Length) From GasPipes
}
或单独的查询类型:
public class WaterPipeLengthQuery { }
public class GasPipeLengthQuery { }
public class GasPipeLengthQueryHandler { }
public class WaterPipeLengthQueryHandler { }
哪个最好?
【问题讨论】:
-
恐怕这是一个偏好问题。两者都没有比另一个更好或更差:)
标签: .net design-patterns domain-driven-design cqrs