拥有这样的Create方法是否正确?还是应该在服务内创建用户。这会破坏DDD概念吗?
在这种情况下,最佳做法是什么?
注意:我也使用DI。
public class User : HistoryBase, IAggregateRoot
{
private IEnumerable<Role> _roles = new List<Role>();
public string Name { get; protected set; }
public string Lastname { get; protected set; }
public string Email { get; protected set; }
public string Password { get; protected set; }
public string EmployeeNumber { get; protected set; }
public bool Active { get; protected set; }
public int SiteID { get; protected set; }
public IEnumerable<Role> Roles { get { return _roles; } }
public static User Create(string name, string lastname, string email, string password, string employeeNumber, Site site)
{
var user = new User()
{
Name = name,
Lastname = lastname,
Email = email,
Password = password,
EmployeeNumber = employeeNumber,
SiteID = site.ID
};
return user;
}
}
一只甜甜圈
相关分类