如何在Ninject语法中使用多个参数,如下所示?Bind().To().WithConstructorArgument("connectionString",ConfigurationManager.ConnectionStrings["MyDb"].ConnectionString);如果需要传递多个参数怎么办? 最佳答案 您可以将调用链接到WithConstructorArgument:Bind().To().WithConstructorArgument("connectionString",ConfigurationMan
我们在所有项目中都使用ninject,正如您所知,有时很难测试内核是否能够在执行时解析每种类型,因为有时当绑定(bind)和自动绑定(bind)的数量级(通过ninject扩展)很高。所以,我在这里要问的是,我如何知道我的内核在加载所有模块和绑定(bind)后能够解析每种类型?你做任何类型的单元测试吗?或者您只是在执行时对应用程序进行验收测试?任何建议都会很棒:) 最佳答案 编写一个集成测试,通过遍历应用程序中的所有根类型并从容器/内核请求它们来测试容器的配置。通过从容器中请求它们,您可以确定容器可以为您构建完整的对象图。根类型是直
我正在尝试将新的ASP.NetMVC4WebAPI项目模板与Ninject一起使用,但由于出现以下错误而碰壁:Method'GetFilters'intype'Ninject.Web.WebApi.Filter.DefaultFilterProvider'fromassembly'Ninject.Web.WebApi,Version=3.0.0.0,Culture=neutral,PublicKeyToken=c7192dc5380945e7'doesnothaveanimplementation.我正在使用ASP.NetMVC4->WebAPI模板在VisualStudio2010中
我创建了一个新的MVCWeb应用程序,并且我引用了Ninject.dll、Ninject.Web.Common.dll和Ninject.Web.MVC.dll。Global.asax.cs:publicclassMvcApplication:NinjectHttpApplication{publicstaticvoidRegisterGlobalFilters(GlobalFilterCollectionfilters){filters.Add(newHandleErrorAttribute());}publicstaticvoidRegisterRoutes(RouteCollect
在Ninject3中有一个新的.ToConstructorfeature.如前所述,它有助于强类型构造函数参数,例如:Bind().ToConstructor(ctorArg=>newMyService(ctorArg.Inject(),ctorArg.Inject()));以几乎相同的方式使用.ToConstructor和.ToMethod实际上有什么区别:Bind().ToMethod(x=>newMyService(x.Kernel.Get(),x.Kernel.Get()));它只是避免使用Kernel.Get()的语法糖,还是我还缺少其他东西? 最
因此,我有一个从WCF服务公开的方法:publicGetAllCommentsResponseGetAllComments(GetAllCommentsRequestrequest){varresponse=newGetAllCommentsResponse();using(_unitOfWork)try{Guard.ArgNotNull(request,"request");varresults=_unitOfWork.CommentRepository.Get(d=>d.Id>0).ToArray();//...Dorestofstuffhere}catch(Exceptionex
我在看本教程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
如何在ninject2.0中使用这个功能?MyTypeobj=kernel.Get(With.Parameters.ConstructorArgument("foo","bar"));没有“With”:( 最佳答案 [Fact]publicvoidCtorArgTestResolveAtGet(){IKernelkernel=newStandardKernel();kernel.Bind().To();varwarrior=kernel.Get(newConstructorArgument("weapon",newSword()))
更新-请查看我的回答以获取此问题解决方案的链接和解释在我们开始之前,我知道这是一个非常常见的问题,我一直在多次使用Ninject没有问题,但现在它出现了,我无法找到解决办法。另外,不,到目前为止,Google和SO上的所有结果都对我没有帮助。因此,请考虑在WindowsServer2008R2上来自VisualStudio2012的非常非常非常简单的原型(prototype)ASP.NETMVC4项目上运行的以下代码:publicclassDefaultController:Controller{privateIGroupPrincipalRepositoryGroupPrincipa
我已经定义了一个接口(interface)和一个类:publicinterfaceIRepository{}publicclassRoleRepository:IRepository{}在这里注入(inject):publicRoleService{[Inject]publicRoleService(IRepositoryrep){_roleRep=rep;}}如何使用Ninject进行依赖注入(inject),说说如何绑定(bind)?我写了一个如下的辅助类,它在非通用接口(interface)上工作得很好。但是如何重构它以支持上面的通用接口(interface)?publiccla