public interface IOrderService
public interface IEmailService
public class OrderService : IOrderService
private readonly IEmailService _emailService;
public OrderService(IEmailService emailService)
_emailService = emailService;
public void ProcessOrder()
Console.WriteLine("Order processed.");
_emailService.Value.SendEmail();
public class EmailService : IEmailService
private readonly IOrderService _orderService;
public EmailService(IOrderService orderService)
_orderService = orderService;
Console.WriteLine("Email sent to customer.");