gpt4 book ai didi

dependency-injection - ServiceStack 中的 Funq 用法

转载 作者:行者123 更新时间:2023-12-04 14:32:08 26 4
gpt4 key购买 nike

  • 我如何访问 Container实例超出 Controller ?
  • 我必须使用 Container.Resolve在我的类里面,但我如何访问 Container实例?
  • 是单例吗?
  • 我可以用new Container()或者有没有像Funq.StaticContainer这样的链?

  • 感谢 Mythz for gist hint 、a) 或 b) 或 c)。

    我将使用 Mythz 的解决方案,它被我接受,但对其模式( ServiceLocator 模式)有所担忧,您可以 check here for extra info .

    最佳答案

    有几种方法可以静态引用您的 AppHost 实例。您可以通过 IAppHost 解决依赖项实例:

    HostContext.TryResolve<T>();
    HostContext.Resolve<T>();
    HostContext.AppHost.TryResolve<T>();

    如果由于某种原因您需要访问具体 Funq.Container ,您可以通过单例访问它:
    ServiceStackHost.Instance.Container

    在服务、Razor View 页面等中,您可以使用:
    base.TryResolve<T>();

    关于dependency-injection - ServiceStack 中的 Funq 用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10837445/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com