问题标签 [ninject-2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2497 浏览

asp.net-mvc-3 - 注入多个模块

我最初不认为这会是一个问题,但是当我不断收到异常时,我想我会在这里发帖,以防我是个白痴……

我有 2 个模块类,一个设置 NHibernate,一个设置 MVC 控制器,现在我遇到的问题是我有如下内容:

每当我尝试使用控制器时,它都会弹出来告诉我它在绑定 sessionManager 参数时遇到了问题。当我创建内核时,我确保列表在 Controller 模块之前有 Nhibernate 模块。

我在上面做的事情有什么愚蠢的吗?

0 投票
1 回答
536 浏览

ninject - 在 Ninject 中继承 ConstructorArguments

我试图找到一种将构造函数参数传递给子类的构造函数的方法。这些对象是不可变的,所以我更喜欢使用构造函数参数。

我遇到的问题是 ConstructorArgument 不继承到子实例化,并且以下语句不可互换:

那么,如何获得可继承的 ConstructorArgument 以及何时有意义(如果有的话)新建 Parameter 类?

0 投票
1 回答
292 浏览

c# - ninject ninjectKernel.Get();

我在哪里可以找到ninjectKernel?我正在使用ninject 2.2

编辑:我创建了一个服务定位器来从任何地方获取我的内核。

0 投票
2 回答
1546 浏览

ninject - 在 Ninject 中调用所有 ISomething 实例

我有一个带有 Start 方法的接口 ISomething。我想获得这个接口的所有实现(在多个程序集中,主要的和所有引用的)并在应用程序启动时调用 Start 方法。如何使用 Ninject 2.2.0.0 .NET 4.0 做到这一点?

Autofac 的答案在这里 Calling all ISomething instances in Autofac

0 投票
2 回答
1180 浏览

ioc-container - Ninject:每一个类实例被拦截一个拦截器实例?

我目前遇到一个问题,试图为每个被拦截的类实例连接一个拦截器实例。

我在 InterceptorRegistrationStrategy 中创建和建议并设置回调以从内核解析拦截器(它有一个注入构造函数)。请注意,我只能在回调中实例化拦截器,因为 InterceptorRegistrationStrategy 没有对内核本身的引用。

我得到每个方法的拦截器实例。

有没有办法为每个被拦截的类型实例创建一个拦截器实例?

我在考虑命名范围,但拦截类型和拦截器不相互引用。

0 投票
1 回答
293 浏览

.net - 通过 ninject.extensions.interception 的 AOP 与 ninject 有何关系?

  1. 我知道 ninject.extensions.interception 可用于 AOP,但该项目如何关联/利用 Ninject?
  2. 是否可以将 Ninject 用于 DI 和其他一些 AOP 框架?ninject.extensions.interception 是否做了一些特别的事情来使 AOP 在也使用 Ninject 的上下文中工作?
0 投票
2 回答
1567 浏览

c# - 模拟对象无法返回所需的对象

肯定有一些明显的我忽略了 - 通常当我遇到这样的问题时。

我有一个控制器,它只是根据提供的 ID 返回一篇新闻文章:

我像这样使用 Moq 来模拟这个:

上面有问题的“GetSampleArticle”方法看起来像这样:

但是我仍然得到模型的空类型。那么我忘记了什么?

0 投票
2 回答
412 浏览

asp.net-mvc-2 - MVC2 & Ninject2 - 控制器不解决依赖关系

我愚蠢地决定在周五的工作中尝试一些新的东西!

所以我使用 NuGet 将 Ninject.Web.Mvc 2.2.xx 添加到我的 .Net MVC2 项目中。

我改变了我的 Global.asax.cs

}

我已经创建了一个这样的控制器......

但管制员仍坚持

找不到类型或命名空间名称“IRecipientContext”(您是否缺少 using 指令或程序集引用?)

找不到类型或命名空间名称“IMailingContext”(您是否缺少 using 指令或程序集引用?)

我的 google-fu 让我失望了,我真的希望这只是一个愚蠢的错字/缺失的事情

提前致谢

0 投票
1 回答
788 浏览

ninject - 有人可以帮我用 Log4net 设置 Ninject 2 吗?

我已经(很高兴地)在一些基本场景中使用 Ninject 一段时间,并希望让它控制我的日志记录。我注意到 Ninject.Extensions.Logging 命名空间的存在,并想使用它,但我遇到了两个问题:

  1. 我希望记录器被初始化为我希望使用运行它(就像我使用 GetCurrentMethod().DeclaringType 运行 LogManager.GetLogger 一样)。
  2. 我希望能够轻松地模拟或“取消”记录器以进行单元测试(即我不想让记录器工作),而不会遇到NullReferenceExceptions

现在,我知道这里有一些问题(甚至是答案),但我似乎找不到任何能指出我正确方向的问题。

我会很感激任何帮助(即使是“你的骨头”也在这里!链接到我应该注意到的东西)。

0 投票
2 回答
3006 浏览

.net - Ninject 基于属性值的条件绑定

我无法使用 ninject 定义绑定。

我在一个标准的 ASP.NET WebForms 应用程序中。我已经定义了一个 http 处理程序来在页面和控件中注入依赖项(属性注入)。

这是我正在尝试做的事情:

我正在创建一个自定义组合框用户控件。基于该组合框上的枚举值,我希望能够在属性中注入不同的对象(我想做的比这更复杂,但对此的回答应该足以让我继续)。