【问题标题】:Ninject dependency resolution for webAPI & MVCWeb API 和 MVC 的 Ninject 依赖解析
【发布时间】:2013-10-23 13:48:54
【问题描述】:

动机:我正在尝试在单例范围内创建一个类,并将其定义为单例:

kernel.Bind<IClass>().To<Class>().InSingletonScope();

想法是我需要在 mvc 和 webapi 之间共享它。

在 MVC 中,类是单例的。所以这在 MVC 项目中工作正常。

问题:我已经为 WebAPI 实现了自己的 IDependencyResolver。它使用相同的内核设置。

所以我知道我们也可以在 webapi 调用中让 Class 成为单例。但是我可以为 webapi 和 mvc 共用这个单例吗?获取对于 mvc 或 webpi 调用都是持久的。

可能我在这里遗漏了一些概念。请解释一下我们如何实现这一目标。或者这是不可能的。 是的,可能设计很奇怪而且不正确,但如果我出于某种原因必须这样做。

【问题讨论】:

    标签: c# asp.net-mvc asp.net-web-api ninject


    【解决方案1】:

    同时拥有 MVC 和 Web Api 意味着您有 2 个独立的应用程序,它们有自己独立的内存空间、进程等。

    我想您可以尝试使用 AppDomain,但您可能会遇到问题。

    你可以尝试使用 session,但是 web api 是 REST 并且不应该有,但是如果你真的需要相同的实例,你可以尝试稍微改变一下规则。

    【讨论】:

    • 您好,感谢您的回答。我已经开始尝试使用会话,尽管 REST 必须是无状态的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-10
    • 2018-10-19
    • 1970-01-01
    • 2015-11-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多