利用介面
在需要服務的具體類中,使用介面來訪問服務而不是其實現,如:
public class BenefitAppService
{
private readonly IBenefitService _service;
public BenefitAppService(IBenefitService service)
{
_service = service;
}
public void Update(Benefit benefit)
{
if (benefit == null) return
_service.Update(benefit);
_service.Complete();
}
}
現在,如果你需要具體類中的某些內容,則不會干擾上面的程式碼。你可以更改服務實現以獲得另一個完全不同的區域,只要它滿足你的介面就可以了。它也使它很容易測試。