C# 依赖注入
一、依赖注入定义:
只依赖于服务类的一个接口,而不依赖于具体服务类。
二,依赖注入的类别
1.构造注入
2.Setter注入
示例:
using System;
using System.Collections.Generic;
using System.Linq;
namespace SetterInjection
{
class Program
{
static void Main(string[] args)
{
Dependency service = new Dependency(new ServiceA());
service.Start();
service = new Dependency(new ServiceB());
service.Start();
}
}
interface IService
{
void ServiceMethod();
}
class ServiceA : IService
{
public void ServiceMethod()
{
Console.WriteLine("Method is service A");
}
}
class ServiceB : IService
{
public void ServiceMethod()
{
Console.Write("Method is service B");
}
}
class Dependency
{
IService service = null;
public Dependency() { }
//构造注入
public Dependency(IService _service)
{
this.service = _service;
}
//Setter注入
public void Setter(IService _service)
{
this.service = _service;
}
public void Start()
{
this.service.ServiceMethod();
}
}
}

浙公网安备 33010602011771号