cost 72 ms
两种类型使用从属关系-如何使用不同的实现 - Two types use a subdependency - how to use different implementations

假设我们注册了两种类型, RootA和RootB ,每种类型都依赖于ISubdependency 。 共享相同的从属实现很容易: 现在的目标是使两个根类型使用不同的子依赖实现。 调用方应该能够注册实例,工厂或类型。 我已经设法实现了前两种情况,尽管在这里解释该方法有些复杂 ...

使用上下文绑定时如何避免在注入目标部件上需要引用Ninject - How to avoid needing a reference to Ninject on an injection target assembly when using contextual binding

我正在使用Ninject进行上下文绑定 。 当具有某种抽象的多个实现,并且注入目标类中的上下文确定要注入哪些实现时,这适用于此。 在文档中,使用“命名绑定”的示例如下所示: 这意味着包含WeakAttack的程序集显然必须引用Ninject才能在构造函数中使用NamedAttri ...

使用Ninject上下文绑定时如何检索属性和属性? - How can I retrieve the attribute and the properties when using Ninject contextual binding?

我有一个构造函数 该属性包含属性“ FilePath”。 我想在上述情况下检索“ FilePath”的值,该值为“ C:\\ SampleData \\ login.json”。 是否可以使用Ninject的IContext检索值? 这个想法是检索属性的值,然后按如下 ...

为同一个构造函数参数使用不同名称的2+个依赖类Ninject上下文绑定 - Ninject contextual binding for 2+ dependent classes w/ different names for same constructor param

在两个类具有相同的基础接口依赖项,但每个类ctor的参数命名不同的情况下,很难弄清楚如何管理上下文绑定。 下面的伪代码演示了我的情况: fileCode是根据对本地文件的一些分析计算得出的。 确定文件类型后,我希望Ninject交出适当的对象以处理该文件 由于我定义的现有绑定要 ...

NInject上下文绑定当多次调用方法时 - NInject contextual binding When method is called too many times

这是一个非常简单的场景,我正在创建虚拟接口+实现,并使用NInject的 Contextual Binding和When方法将它们绑定 ,该方法return true ,并且在调用时还将“测试”消息输出到控制台。 我以为When()每个Get<>() When()只会被调用一次, ...

是什么原因导致Ninject.Activation.IRequest Target属性为null - What causes the Ninject.Activation.IRequest Target property to be null

可能是一个简单的问题,但我没有在文档中找到任何内容或直接回答它的SO。 我不得不第一次使用Ninject When(Func<IRequest, bool> condition)扩展方法,并且挂起了一些null对象异常。 我发现IRequest.Target属性有时为null ...

Drupal7:如何上下文过滤:内容:Nid在Views3中返回TNID而不是NID - Drupal7: How could Contextual filter: Content: Nid return the TNID instead of NID in Views3

我有一个上下文过滤器:内容: Views3中的Nid , 当过滤器值不可用时 ,我想返回TNID而不是NID。 我试过了 要么 和其他在“ 提供默认值:PHP代码”字段中。 没事。 ...

运行时的 Ninject 上下文绑定 - Ninject Contextual Binding at RunTime

我正在尝试了解 Ninject 上下文绑定。 我了解在设计时了解我的上下文的场景。 例如,我知道当我想在测试 class 和 SQL DB 中使用它时,我可以使用命名属性将 DB object 绑定到模拟数据库。 但是,我不知道如何在运行时处理上下文绑定。 例如,假设我正在为购物中心编写软件。 店主 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM