问题标签 [ninject.web]

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 回答
520 浏览

dependency-injection - Ninject 可以注入一个类并使其引用目标类作为反向引用吗?

我想在我的网络表单类中注入一个演示者。在这样做的同时,我希望注入的演示者包含对它被注入的视图的引用。注入一个类,并引用它被注入的类。Ninject 可以做到这一点吗?注入 webforms 类时,注入是在构造函数执行之前执行的吗?我是否应该只注入演示者并使用构造函数来传递视图?

0 投票
1 回答
2179 浏览

asp.net-mvc-3 - 使用 Ninject 和全局过滤器进行依赖注入:IAuthorizationFilter

我使用安装在 App_Start 文件夹中的标准 NinjectMVC3 Bootstrapper。

我的应用程序类如下所示:

我只有以下在 NinjectMVC3 中注册的出价规则:

还有我的全局过滤器:

我的应用程序中有任何控制器。我想为每个控制器的每个动作调用调用 OnAuthorization。

但是我的代码不起作用。谢谢。

0 投票
1 回答
382 浏览

ninject - 如何设置 ASP.NET Web 窗体应用程序以使用 Ninject.Web 3.0.0 RC3?

我正在尝试设置我的 ASP.NET Web Forms (Framework 4.0) 应用程序以使用 Ninject.Web。我想使用 Ninject 3.0.0 的 RC3,因为我遇到了数据绑定控件的问题。

通过我对 Ninject.Web.Common 和 Ninject.Web 的检查,似乎有两种方法可以使用现有框架创建内核。第一种方法是通过 App_Start 文件夹中定义的类,第二种方法是在派生自 NinjectHttpApplication 时重写 CreateKernel 方法。

继续使用 Ninject.Web 3.0.0,创建内核首选哪种方法?

0 投票
4 回答
8907 浏览

asp.net-mvc - Ninject.Web.Common 抛出 ActivationException 试图将依赖项注入 HttpApplicationInitializationHttpModule

我不知道从哪里开始解决这个问题,但是在尝试运行我的 ASP.NET MVC 应用程序时遇到了异常。

这是我得到的错误:

[ActivationException:激活 IntPtr 时出错

没有匹配的绑定可用,并且该类型不可自绑定。激活路径:

  1. 将依赖 IntPtr 注入到 Func{IKernel} 类型的构造函数的参数方法中
  2. 将依赖Func{IKernel}注入到HttpApplicationInitializationHttpModule类型的构造函数的参数lazyKernel中
  3. 请求 IHttpModule

建议:

  1. 确保您已为 IntPtr 定义绑定。
  2. 如果绑定是在模块中定义的,请确保该模块已加载到内核中。
  3. 确保您没有意外创建多个内核。
  4. 如果您使用构造函数参数,请确保参数名称与构造函数参数名称匹配。
  5. 如果您使用自动模块加载,请确保搜索路径和过滤器正确。

堆栈跟踪如下:

这似乎不是每个人都会遇到的错误(至少,我的谷歌搜索没有发现任何有用的东西),所以我认为我在做一些奇怪的事情,但我不知道从哪里开始调试它。

我应该提到我正在使用几个 Ninject 库(Ninject、Ninject.Web.Common、Ninject.MVC3 和 Ninject.FluentValidation),它们都是 3.0.00-RC3 版本。我意识到,如果我使用预发布库,所有的赌注都将失败,但我觉得我做错了什么,因为其他人似乎没有遇到同样的错误。

关于问题可能是什么或我应该从哪里开始寻找的任何想法?

0 投票
2 回答
602 浏览

asp.net - Ninject 注入不适用于子类

我正在尝试在第三级子类上添加绑定,但找不到合适的方法。我正在使用 Ninject 3.0,我有以下场景:

如何将 RepA 绑定到 ClassBase 以便 ClassA 可以拥有该存储库,而 ClassB 应该绑定到 RepB ?

谢谢

0 投票
1 回答
682 浏览

asp.net - 带有 ASP .NET WebForms 的 Ninject 3.0 (NuGet) 不调用 WebActivator

我创建了一个全新的 WebForm 站点(VS2010)并从 NuGet 添加了 Ninject.Web(3.0)......它在 App_Start 上创建了 NinjectWeb 和 NinjectWebCommon......它的编译很好,但它从不执行代码......

我是否应该做一些事情来让 WebActivator 与 WebForms 一起工作?

我用 MVC 3 项目完成了同样的过程,它工作得很好......

知道为什么它不能在 WebForms 中工作吗?

ps.:它似乎无法识别 App_Start

0 投票
1 回答
283 浏览

ninject - Ninject 指定非引用组件的绑定范围

我有一个用于桌面应用程序和网络应用程序的库。

这个库引用了一个外部数据访问组件,在桌面上应该绑定为单例,在 web 上应该在请求范围内。

  • 桌面项目参考核心项目
  • Web 项目参考核心项目
  • 核心项目引用 ExternalComponent

今天我被迫在网络客户端上这样做:

在桌面客户端上,相同但InSingletonScope()强制我的 Web 和桌面应用程序引用 ExternalComponent.dll,这不是我的意图。

如何进行绑定,以便我可以从客户端(Web 或桌面)指定我需要此外部组件所在的范围,而无需客户端引用此数据访问组件?

我正在考虑核心项目上的一些方法,它接收客户端需要的范围并进行所有设置,但我在 Ninject API 中找不到让我这样做的东西。

0 投票
1 回答
2458 浏览

asp.net - 在 MVC3/Ninject 3 环境中使用 ASMX Web 服务的 Ninject

我正在寻找将经典 asmx Web 服务整合到我的 MVC3 环境中的最佳方式。我希望在两者之间共享内核/容器。

在过去使用 ASP.NET Web 表单时,我能够使用以下内容:

这使用较旧的 Ninject.Web 来共享内核,使用在 WebServiceBase、PageBase 等之间共享的 KernelContainer 等。

现在我有一个使用 Ninject.Web.MVC 的 MVC3 应用程序,我需要一个较旧的 Web 服务在相同的空间中运行,使用相同的内核/绑定。我无法找到有关启动和运行这样的设置的任何信息。

有没有人有任何想法、示例或帖子可以指向我(除了不使用 asmx Web 服务)?

0 投票
1 回答
131 浏览

ninject - 即使使用 Copy Local=true,Microsoft.Web.Infrastructure 也无法输出目录

在我的本地开发 PC 上安装 Ninject.web 并编译该站点后,它就可以工作了。但是当它被编译时,在提交后,服务器以发布模式构建,bin 文件夹中只缺少 microsoft.web.infrastructure。

也不会为 Ninject 运行注册 HttpModule。

我不知道该怎么办!

0 投票
3 回答
8303 浏览

c# - Ninject 在具有多个程序集的 WebApi 项目中引发激活异常

我的 asp.net WebApi 项目由服务、核心和数据访问的多个程序集组成。为了在项目中使用 Ninject 作为我的 DI 容器,我从 NuGet 添加了 Ninject.Web.Common 包。然后,我将 IDependencyResolver 实现为:

这是我的 Ninject.Web.Common.cs。

例外是

我使用了各种注册(注释掉),但没有一个工作。NinjectWebCommon.cs -> CreateKernel() 方法中的断点被命中,GetService(System.Type serviceType) 方法中的断点也是如此。AppDomain.CurrentDomain.RelativeSearchPath 解析到应用程序的 bin 目录,它包含所有 dll,包括 System.Web.Http.dll,其中包含 IHostBufferPolicySelector 类型。

如何正确使用 Ninject.Extensions.Conventions 设置内核以进行类型解析?