|
|
1
0
你没有注入你的服务。相反,您试图使用服务定位器反模式来获取它,但实际上并没有使用真正的服务集合。您正在创建一个新的服务集合,但没有注册所需的服务,并试图将您的服务从中拉出,这当然会失败。
尽管这无论如何都不是正确的方法,但要真正正确使用服务定位器反模式,您需要注入
那么,这只会起作用,因为在这种情况下,您的特定服务是单例的。如果已确定范围,则必须首先创建范围:
但是,在某个范围内检索到的任何内容都只能在该范围内使用。因此,对于作用域服务,您必须像这样将每个操作包装在using中(即,您不能将服务持久化到ivar)。
综上所述,在这里,您正在注入控制器,因此,您可以直接注入依赖项,而不必依赖于服务定位器反模式(这是一种有原因的反模式)。所以所有的你
真正地
需要做的就是注射
|
|
|
Andrus · 如何从syslog中删除计算机和进程名称以及进程ID 1 年前 |
|
|
Vasu V · 将foreach转换为select语句 2 年前 |
|
|
Inglonias · 初始化集合的语法是什么? 2 年前 |