草庐IT

ninject-2

全部标签

c# - With.Parameters.ConstructorArgument 与 ninject 2.0

如何在ninject2.0中使用这个功能?MyTypeobj=kernel.Get(With.Parameters.ConstructorArgument("foo","bar"));没有“With”:( 最佳答案 [Fact]publicvoidCtorArgTestResolveAtGet(){IKernelkernel=newStandardKernel();kernel.Bind().To();varwarrior=kernel.Get(newConstructorArgument("weapon",newSword()))

c# - ASP.NET MVC 4 + Ninject MVC 3 = 没有为此对象定义无参数构造函数

更新-请查看我的回答以获取此问题解决方案的链接和解释在我们开始之前,我知道这是一个非常常见的问题,我一直在多次使用Ninject没有问题,但现在它出现了,我无法找到解决办法。另外,不,到目前为止,Google和SO上的所有结果都对我没有帮助。因此,请考虑在WindowsServer2008R2上来自VisualStudio2012的非常非常非常简单的原型(prototype)ASP.NETMVC4项目上运行的以下代码:publicclassDefaultController:Controller{privateIGroupPrincipalRepositoryGroupPrincipa

c# - 带有通用接口(interface)的 NInject

我已经定义了一个接口(interface)和一个类:publicinterfaceIRepository{}publicclassRoleRepository:IRepository{}在这里注入(inject):publicRoleService{[Inject]publicRoleService(IRepositoryrep){_roleRep=rep;}}如何使用Ninject进行依赖注入(inject),说说如何绑定(bind)?我写了一个如下的辅助类,它在非通用接口(interface)上工作得很好。但是如何重构它以支持上面的通用接口(interface)?publiccla

c# - NInject:您在哪里保存对内核的引用?

我在一个新的网络应用程序上使用NInject,有两件事我不清楚:我不需要保留对内核(Session/App变量)的引用以确保GC不会收集我的所有实例吗?例如,如果我指定.Using()然后Kernel对象被收集,那么我所有的“单例”是不是也被收集了?如果我确实需要保留对Kernel对象的引用,我该如何允许传递给WithArguments()的参数发生变化,或者这是不可能的。 最佳答案 您确实不想绕过内核。通常,在Web应用程序中,我将内核存储在HttpApplication的静态属性中。如果您需要对内核的引用,您只需公开一个类型为I

c# - 什么是 Ninject 以及何时使用它?

我一直在帮助几个friend做一个项目,有一个类使用了Ninject。我是C#的新手,我不知道那个类在做什么,这就是我需要了解Ninject的原因。任何人都可以解释Ninject是什么以及什么时候使用它(如果可能的话举例)?或者,如果您可以指向一些链接,那也很棒。我试过这个问题:Ninjecttutorials/documentations?但它并没有真正帮助像我这样的初学者。 最佳答案 Ninject是.NET的依赖注入(inject)器,模式依赖注入(inject)(控制反转模式的形式)的实际实现。假设您有两个类DbReposi

c# - Ninject 模块的目的是什么?

我是一个完全的ninject新手我一直在拆解其他人的代码,发现了几个nInject模块的实例-从Ninject.Modules.Module派生的类,并且有一个包含大部分代码的加载方法。通过调用StandardKernel实例的LoadModule方法并将模块类的实例传递给它来调用这些类。也许我在这里遗漏了一些明显的东西,但是与仅仅创建一个普通的旧类并调用它的方法,或者一个带有静态方法的静态类相比,这样做有什么好处呢? 最佳答案 Ninject模块是用于向IoC容器注册各种类型的工具。优点是这些模块然后保存在它们自己的类中。这允许您

c# - 在构造函数中使用带有附加参数的 Ninject 创建实例

我决定开始使用Ninject并遇到一个问题。假设我有以下情况。我有一个IService接口(interface)和2个实现该接口(interface)的类。我还有一个类,它有一个获取IService的构造函数和一个int。我如何使用Ninject创建此类的实例(我不想硬连接这个int,我想在每次获得实例时都传递它)?下面是一些说明情况的代码:interfaceIService{voidFunc();}classStandardService:IService{publicvoidFunc(){Console.WriteLine("Standard");}}classAlternativ

c# - 何时使用单例、 transient 和使用 Ninject 和 MongoDB 的请求

当我在global.cs文件中进行绑定(bind)时,我不太确定何时应该使用SingletonScope()、TransientScope()和RequestScope()。例如,我对MongoSession的调用(使用NoRM和mvcStarter项目http://mvcstarter.codeplex.com/)设置为SingletonScope,但我创建了一个使用此MongoSession对象的存储库,以便更轻松地调用Mongo,例如,我有一个NewsRepository它使用MongoSession从数据中获取我的新闻项目。例如,我有一个调用来获取DisplayOnHome设置

c# - 何时使用单例、 transient 和使用 Ninject 和 MongoDB 的请求

当我在global.cs文件中进行绑定(bind)时,我不太确定何时应该使用SingletonScope()、TransientScope()和RequestScope()。例如,我对MongoSession的调用(使用NoRM和mvcStarter项目http://mvcstarter.codeplex.com/)设置为SingletonScope,但我创建了一个使用此MongoSession对象的存储库,以便更轻松地调用Mongo,例如,我有一个NewsRepository它使用MongoSession从数据中获取我的新闻项目。例如,我有一个调用来获取DisplayOnHome设置
78910