ozz*_*ozz 6 dependency-injection servicestack funq
Container从控制器中访问实例?Container.Resolve在我的课堂上使用但是如何访问Container实例?new Container()或有链接Funq.StaticContainer吗?感谢Mythz 的主旨提示,a)或b)或c).
我将使用Mythz的解决方案,它被我接受,但有关于它的模式(ServiceLocator模式)的问题,你可以在这里查看额外的信息.
有几种方法可以静态引用AppHost实例.您可以通过IAppHost实例解决依赖关系:
HostContext.TryResolve<T>();
HostContext.Resolve<T>();
HostContext.AppHost.TryResolve<T>();
Run Code Online (Sandbox Code Playgroud)
如果由于某种原因需要访问混凝土Funq.Container,您可以通过单例访问它:
ServiceStackHost.Instance.Container
Run Code Online (Sandbox Code Playgroud)
在服务,Razor View Page等内部,您可以使用:
base.TryResolve<T>();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3825 次 |
| 最近记录: |