标签:接口 imp sharp win client 分享 inject cti write
图3.1 Setter注入示意
定义一个接口:
namespace SetterInjection { internal interface IServiceClass { string ServiceInfo(); } }
定义一个要实现该接口的类A:
internal class ServiceClassA : IServiceClass { public string ServiceInfo() { return "我是ServceClassA"; } }
定义一个要实现该接口的类B:
internal class ServiceClassB : IServiceClass { public string ServiceInfo() { return "我是ServceClassB"; } }
定义一个主体类---注入点:
internal class ClientClass { private IServiceClass _serviceImpl; public void Set_ServiceImpl(IServiceClass serviceImpl) { this._serviceImpl = serviceImpl; } public void ShowInfo() { Console.WriteLine(_serviceImpl.ServiceInfo()); } }
Main:
class Program { static void Main(string[] args) { //setterInjection IServiceClass serviceA = new ServiceClassA(); IServiceClass serviceB = new ServiceClassB(); ClientClass client = new ClientClass(); client.Set_ServiceImpl(serviceA); client.ShowInfo(); client.Set_ServiceImpl(serviceB); client.ShowInfo(); Console.ReadLine(); } }
结果:
标签:接口 imp sharp win client 分享 inject cti write
原文地址:http://www.cnblogs.com/25miao/p/7183463.html