【发布时间】:2019-12-27 13:01:25
【问题描述】:
我从不同的来源找到了对领域驱动架构进行建模的不同方法。但作为最佳实践,最好将对象的验证放在它的属性设置器中,保持设置器私有?还是将属性设为私有并在构造函数中执行验证?
private string _lastName;
public string LastName
{
get
{
return this._lastName;
}
set
{
if(value == null)
{
return;
//or throw exception
}
_lastName = value;
}
如果我有任何错误,请纠正我。
【问题讨论】:
-
嗯,这有明显的代码气味。我会为每个模型定义一些基于通用属性的验证器,然后进行基于约定的模型初始化。
标签: c# asp.net asp.net-core domain-driven-design getter-setter