草庐IT

hangfire.ninject

全部标签

c# - 如何在 ASP.NET MVC Web 应用程序中使用 Ninject?

我创建了一个新的MVCWeb应用程序,并且我引用了Ninject.dll、Ninject.Web.Common.dll和Ninject.Web.MVC.dll。Global.asax.cs:publicclassMvcApplication:NinjectHttpApplication{publicstaticvoidRegisterGlobalFilters(GlobalFilterCollectionfilters){filters.Add(newHandleErrorAttribute());}publicstaticvoidRegisterRoutes(RouteCollect

c# - Ninject 3 中的 .ToConstructor 和 .ToMethod 有什么区别?

在Ninject3中有一个新的.ToConstructorfeature.如前所述,它有助于强类型构造函数参数,例如:Bind().ToConstructor(ctorArg=>newMyService(ctorArg.Inject(),ctorArg.Inject()));以几乎相同的方式使用.ToConstructor和.ToMethod实际上有什么区别:Bind().ToMethod(x=>newMyService(x.Kernel.Get(),x.Kernel.Get()));它只是避免使用Kernel.Get()的语法糖,还是我还缺少其他东西? 最

c# - Dispose() 和 Ninject 指南

因此,我有一个从WCF服务公开的方法:publicGetAllCommentsResponseGetAllComments(GetAllCommentsRequestrequest){varresponse=newGetAllCommentsResponse();using(_unitOfWork)try{Guard.ArgNotNull(request,"request");varresults=_unitOfWork.CommentRepository.Get(d=>d.Id>0).ToArray();//...Dorestofstuffhere}catch(Exceptionex

c# - 验证: How to inject A Model State wrapper with Ninject?

我在看本教程http://asp-umb.neudesic.com/mvc/tutorials/validating-with-a-service-layer--cs,了解如何在包装器上包装我的验证数据。我想使用依赖注入(inject)。我正在使用ninject2.0namespaceMvcApplication1.Models{publicinterfaceIValidationDictionary{voidAddError(stringkey,stringerrorMessage);boolIsValid{get;}}}//包装器usingSystem.Web.Mvc;namesp

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容器注册各种类型的工具。优点是这些模块然后保存在它们自己的类中。这允许您