StackAsk is a community where developers ask questions, share answers and learn from each others real-world experience, so every solved problem helps the next person who runs into it.
public class ServiceSendMail : IServiceSendMail { IServiceUpdateStatusMail _b; public ServiceSendMail(IServiceUpdateStatusMail b){ _b = b; } public void SendMail(){ _b.UpdateStatus(); } } public class ServiceUpdateStatusMail : IServiceUpdateStatusMail{ IServiceSendMail _a; public ServiceUpdateStatusMail(IServiceSendMail a){ _a = a; } public void UpdateStatus(){ _a.SendMail(); } }
public interface IServiceSendMail { void SendMail(); } public interface IServiceUpdateStatusMail { void UpdateStatus(); } public class MailServiceMediator { IServiceSendMail Sender; IServiceUpdateStatusMail StatusUpdater; public void SendMail() { Sender.SendMail(); StatusUpdater.UpdateStatus(); Sender.SendMail(); } } public class ServiceSendMail : IServiceSendMail { public void SendMail() { } } public class ServiceUpdateStatusMail : IServiceUpdateStatusMail { public void UpdateStatus() { } }
public class ServiceA : IServiceA { IServiceProvider _serviceProvider; public ServiceA(IServiceProvider serviceProvider){ _serviceProvider = serviceProvider; } public void DoSomething(){ _serviceProvider.GetRequiredService().DoSomething(); } } public class ServiceB : IServiceB{ IServiceProvider _serviceProvider; public ServiceB(IServiceProvider serviceProvider){ _serviceProvider = serviceProvider; } public void DoSomething(){ _serviceProvider.GetRequiredService().DoSomething(); } }
2.2K Point(s)
1.2K Point(s)
313 Point(s)
178 Point(s)
138 Point(s)
Input your email to receive reset password link, or if you remember your password, you can click