c# - DTO's and calls between services -
say have 2 services in service layer, servicea , serviceb , each interface ( iservicea , iserviceb respectively). the ui layer has reference service interfaces return dtos methods. concrete service classes responsible mapping domain models (ef pocos) dtos. servicea takes dependency on iserviceb via dependency injection using ioc container, in order call methods on service. there couple of problems arise in doing this: unnecessary/duplicated mapping , dto call method and/or consume result. tightly coupling calling method dto contracts of called methods input parameters , return type. initially thought refactor logic down internal method , call both services. servicea takes dependency on interface iserviceb internal methods not exposed. how go dealing issue? further information (added example code requested): // domain model public class customer { public int id { get; set; } public string name { get; set; } } // dto domain model public class cust