簡體   English   中英

編輯現有對象應該在存儲庫層還是在服務中完成?

[英]Editing of an existing object should be done in repository layer or in service?

例如,如果我有一個有債務的用戶。 我想改變他的債務。 我應該通過獲取對象,編輯並保存對象,在UserRepository或服務中執行此操作(例如BuyingService)嗎?

您應該負責將對象變更為同一個對象,並使用存儲庫來檢索此對象。

示例情況:

class User {
 private int debt; // debt in cents
 private string name;

 // getters

 public void makePayment(int cents){
  debt -= cents;
 }
}

class UserRepository {
 public User GetUserByName(string name){
  // Get appropriate user from database
 }
}

用法(傑克支付10歐元):

userRepository.GetUserByName("Jack").makePayment(1000);

請記住,這只是一個示例方法。 在編程中沒有一套方法可以實現某些目標,你可以完全不同地做到這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM