Exrin InjectionProxy InstanceType含义和用法

时间:2017-06-06 18:15:48

标签: exrin

查看主应用程序引导程序时,InjectionProxy用于注册实例和接口。我注意到接口可以注册为InstanceType.SingleInstance(在特斯拉应用程序中为数据库完成)或InstanceType.EachResolve。进一步深入研究InjectionProxy代码表明实例始终为SingleInstance

SingleInstanceEachResolve有什么区别,为什么我会选择我的接口为一个或另一个,为什么实例总是设置为SingleIstance

1 个答案:

答案 0 :(得分:1)

SingleInstance 意味着它只会创建该类的一个副本,以便在请求它的任何内容中使用。

EachResolve ,意味着每个注入了此接口的类都会获得一个新的接口实例。

这取决于您对应用的需求。在大多数情况下,SingleInstance是你想要的,但是EveryResolve是你的情况需要一个新的实例,而不是整个你的应用程序使用的实例。