【发布时间】:2013-12-18 21:10:22
【问题描述】:
我有一个特定的场景,其中聚合具有检查地址是否有效的行为。此验证通过网站上的内联 ajax 表单验证在聚合上触发。在聚合和网站之间是协调两者的应用程序服务。
就目前而言,我创建了一个本质上是空聚合的内容并设置了地址属性,以便可以完成检查。基于此,我将 true 或 false 返回到网站(ASP.NET MVC)。在 DDD 的背景下,这似乎不是正确的方法。
public bool IsAddressAvailable(string address)
{
var aggregate = new Aggregate
{
Address = address
};
return aggregate.IsAddressValid();
}
我有哪些选项可以更好地使用 DDD?我正在考虑将其分离到域服务中。任何建议将不胜感激!
【问题讨论】:
-
验证的性质是什么?只检查格式?根据地址数据库验证它?检查您的系统中没有注册现有地址?
-
所有这些。我已经简化了上面的例子。实际上,在验证过程中还会调用另一个服务。
标签: c# .net domain-driven-design