在CSharp中写一个依赖注入的示例
时间: 2023-02-08 15:47:14 浏览: 78
下面是在 C# 中使用依赖注入的示例:
```
interface IEmailService
{
void SendEmail(string to, string subject, string body);
}
class EmailService : IEmailService
{
public void SendEmail(string to, string subject, string body)
{
// 真正的邮件发送代码
}
}
class MyController
{
private readonly IEmailService _emailService;
public MyController(IEmailService emailService)
{
_emailService = emailService;
}
public void SendEmail(string to, string subject, string body)
{
_emailService.SendEmail(to, subject, body);
}
}
class Program
{
static void Main(string[] args)
{
IEmailService emailService = new EmailService();
MyController controller = new MyController(emailService);
controller.SendEmail("example@example.com", "Hello", "World");
}
}
```
在上面的示例中,`IEmailService` 是一个接口,`EmailService` 是一个实现该接口的类,`MyController` 类使用 `IEmailService` 接口来发送电子邮件。在 `Main` 方法中,我们将一个 `EmailService` 实例传递给了 `MyController` 的构造函数,这就是依赖注入。