在C#中实现依赖注入通常可以使用一些现成的框架,比如ASP.NET Core中自带的依赖注入容器。以下是一个简单的示例:
首先,定义一个接口和一个实现该接口的类:
public interface IMyService
{
void DoSomething();
}
public class MyService : IMyService
{
public void DoSomething()
{
Console.WriteLine("Doing something...");
}
}
然后,在Startup类中配置依赖注入容器:
public void ConfigureServices(IServiceCollection services)
{
services.AddSingleton<IMyService, MyService>();
}
最后,在需要使用该服务的地方注入该服务:
public class MyController
{
private readonly IMyService _myService;
public MyController(IMyService myService)
{
_myService = myService;
}
public void DoSomething()
{
_myService.DoSomething();
}
}
这样就实现了依赖注入,可以在控制器中使用MyService类的实例而不需要显式地创建它。