目录
- 简单介绍
- core自带IOC的实现解释
1.简单介绍 (个人理解)
是什么:IOC是一种设计原则,而非设计模式,是对流程控制,当你注入你需要的定制化类时,流程就确定了
怎么用:和IOC容器说你这次要哪些类别的类,要用的时候和IOC容器说,IOC容器给你创造出来这个类然后给你[注入和注册]
实现原理:反射和工厂
依赖原则
A.高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。
B.抽象不应该依赖于具体,具体应该依赖于抽象。
注意点:core自带的IOC容器不支持属性注入
2.core自带IOC的实现解释
这里先实现运行起来看看,再解释细节.
a.创建好自己流程中需要实现的哪些类
public interface IGuidService { Guid GetID(); } public interface INewAlwaysGuidService :IGuidService { } public interface INewGuidService : IGuidService { } public interface IInstanceGuidService : IGuidService { } public class NewAlwaysGuidService : INewAlwaysGuidService { public NewAlwaysGuidService() { ID =Guid.NewGuid(); } public Guid ID; public Guid GetID() { return ID; } } public class NewGuidService : INewGuidService { public NewGuidService() { ID = Guid.NewGuid(); } public Guid ID; public Guid GetID() { return ID; } } public class InstanceGuidService : IInstanceGuidService { public InstanceGuidService() { ID = Guid.NewGuid(); } public Guid ID; public Guid GetID() { return ID; } }