【问题标题】:Ninject contextual binding magicNinject 上下文绑定魔法
【发布时间】:2012-04-29 11:44:30
【问题描述】:

我的绑定有点奇怪。

我有一些事件源和想要订阅它们的类。我会有不同的源实例(尽管它们都是相同的类),但订阅者的类型可能会在不同的类之间发生变化。

到目前为止,我的方法是这样的:

public interface ISubscribeTo<T> where T : ISubscribable
{
  void Subscribe(T eventSource);
}

public interface ISubscribable {}

我想让ISubscribeTo&lt;T&gt; 的任何类型在激活时将ISubscribable 的实例传递给它。

当我使用ActivationStrategy 来连接这些东西时,这非常简单。

我遇到的复杂情况是 ISubscribeTo&lt;T&gt;s 取决于我激活的类。

在我的ActivationStrategy 中,我调用了内核的GetAll 方法,但我想以某种方式只获取已经为请求激活的实例。

有人对我如何实现这一点有任何建议吗?

【问题讨论】:

    标签: ninject


    【解决方案1】:

    查看事件代理。它们使订阅来自其他组件的事件变得非常容易,而无需添加自己的机制。见the tutorial

    https://github.com/ninject/ninject.extensions.bbveventbroker
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-30
      相关资源
      最近更新 更多