利用接口

在需要服务的具体类中,使用接口来访问服务而不是其实现,如:

 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();
    }        
}

现在,如果你需要具体类中的某些内容,则不会干扰上面的代码。你可以更改服务实现以获得另一个完全不同的区域,只要它满足你的界面就可以了。它也使它很容易测试。