Mini 容器学习笔记8——字段注入
字段注入的条件:
1. 字段必须是实例字段
2. 字段不能是只读字段
3. 字段上必须贴有标签InjectAttribute或InjectManyAttribute
字段注入最佳原则
1. 当需要注入的字段的访问权限是私有时,应该把字段所属的类标记为密封类,具体原因请大家猜一猜。
2. 当类标记为密封类时,该类应该实现一个或多个契约接口(当如果需要对该类进行Aop拦截时,可以进行接口代理)
样例代码学习:
[Contract] interface ISampleContract { void Test(); } [Contract] interface IFieldContract { } sealed class SampleComponent : ISampleContract { [Inject] IFieldContract field; public void Test() { Assert.IsNotNull(field); } } class FieldComponent : IFieldContract { } [Test] public void Test() { ServiceRegistry .Register<SampleComponent>() .Register<FieldComponent>(); var component = ServiceLocator.Get<ISampleContract>(); component.Test(); }
Mini 容器官方网站:
推荐资源: