2016-10-04 90 views
0

是否允許DDD Factory直接爲域對象設置屬性? 如:DDD工廠和域對象屬性

public class DomainObjectFactory 
{ 
    public DomainObject CreateForUser(int userId) 
    { 
     var domainObject = new DomainObject(); 
     domainObject.UserId = userId; 
    } 

} 
+0

這意味着你不會遵循永遠有效的範例。我傾向於贊成這種方法,但不是每個人都這樣做。 – plalx

回答

4

正常途徑創建域實體將與構造(或多個)這樣做。所以你通過一個或多個構造函數接受所需的參數。

如果您使用域工廠,沒有任何更改。當實體創建更加複雜時,例如從多個對象創建時,或者在創建過程中涉及一些邏輯的情況下,將使用一個域工廠,但仍然會使用實體的構造函數來創建它們。