我有一个像CQRS命令这CQRS命令构造
public sealed class RequestRoute
{
public RequestRoute(string fromAddressName, double fromLatitude, double fromLongitude, string toAddressName, double toLatitude, double toLongitude, string userId)
{
UserId = userId;
ToLongitude = toLongitude;
ToLatitude = toLatitude;
ToAddressName = toAddressName;
FromLongitude = fromLongitude;
FromLatitude = fromLatitude;
FromAddressName = fromAddressName;
}
public string FromAddressName { get; private set; }
public double FromLatitude { get; private set; }
public double FromLongitude { get; private set; }
public string ToAddressName { get; private set; }
public double ToLatitude { get; private set; }
public double ToLongitude { get; private set; }
public string UserId { get; private set; }
}
我的程序员的直觉告诉我,我应该的因素和FromXXX领域ToXXX进入所谓的“地址”中一个单独的类...但我不确定是否违反了CQRS模式...我见过的所有例子都只使用基本类型作为命令和事件的属性。
如果该命令包含具有两个或多个基元的类型集合,例如List(),该怎么办? –
sventevit
2014-04-23 11:20:05
它仍然是面向数据的。它不封装数据并暴露行为。基本上一个命令是(或应该)只是模式。 – 2014-04-23 11:37:47
如果您的命令需要复杂对象列表,您会使用什么?你会将这个复杂的对象标记为可序列化的,然后使用List或者你会使用List >? –
sventevit
2014-04-23 11:49:33