我在 webforms 应用程序中使用 Ninject 3.2.0.0 和 Ninject.Extension.Factory 3.2.0.0。
我收到以下错误报告...
加载 Ninject 组件时出错 IAdviceRegistry 没有在内核的组件容器中注册此类组件。
建议: 1) 如果您已经为 KernelBase 创建了自定义子类,请确保您已正确实现 AddComponents() 方法。2) 确保您没有通过调用 RemoveAll() 从容器中删除组件。3) 确保您没有意外创建多个内核。
在 C:\Projects\Ninject\ninject\src\Ninject\Components\ComponentContainer.cs 中的 Ninject.Components.ComponentContainer.Get(Type 组件):c:\Projects\Ninject\ 中 Ninject.Components.ComponentContainer.GetT 的第 162 行ninject\src\Ninject\Components\ComponentContainer.cs:C:\Projects\Ninject\ninject.extensions.interception\src\Ninject 中 Ninject.Extensions.Interception.Activation.Strategies.ProxyActivationStrategy.ShouldProxy(IContext context) 的第 116 行。 Extensions.Interception\Activation\Strategies\ProxyActivationStrategy.cs:C:\Projects\Ninject\ninject.extensions.interception\src 中 Ninject.Extensions.Interception.Activation.Strategies.ProxyActivationStrategy.Deactivate(IContext context, InstanceReference reference) 的第 66 行\Ninject.Extensions.Interception\Activation\Strategies\ProxyActivationStrategy.cs:Ninject.Activation 的第 51 行。Pipeline.<>c__DisplayClass6.b__4(IActivationStrategy s) in c:\Projects\Ninject\ninject\src\Ninject\Activation\Pipeline.cs:Ninject.Infrastructure.Language.ExtensionsForIEnumerableOfT.Map[T](IEnumerable) 中的第 72 行1 series, Action
1 个动作)在 c:\Projects\Ninject\ninject\src\Ninject\Infrastructure\Language\ExtensionsForIEnumerableOfT.cs:第 31 行 Ninject.Activation.Pipeline.Deactivate(IContext context, InstanceReference reference) in c:\Projects\Ninject\ ninject\src\Ninject\Activation\Pipeline.cs:C:\Projects\Ninject\ninject\src\Ninject\Activation\Caching\Cache.cs 中 Ninject.Activation.Caching.Cache.Forget(CacheEntry entry)的第 74 行: C:\Projects\Ninject\ninject\src\Ninject\Activation\Caching\Cache.cs 中 Ninject.Activation.Caching.Cache.Forget(IEnumerable`1 cacheEntries) 的第 254 行:Ninject.Activation.Caching.Cache 的第 240 行.Clear(Object scope) in c:\Projects\Ninject\ninject\src\Ninject\Activation\Caching\Cache.cs:Ninject.Activation.Caching.Cache 的第 198 行。<>c__DisplayClass3.b__1(Object o, EventArgs e ) 在 c 中:\Projects\Ninject\ninject\src\Ninject\Activation\Caching\Cache.cs: 第 94 行 Ninject.Activation.Blocks.ActivationBlock.Dispose(Boolean disposing) in c:\Projects\Ninject\ninject\src\Ninject\Activation \Blocks\ActivationBlock.cs:C:\Projects\Ninject\ninject\src\Ninject\Infrastructure\Disposal\DisposableObject.cs 中 Ninject.Infrastructure.Disposal.DisposableObject.Dispose() 的第 59 行:Brightspot.WebApi 的第 33 行。 Ioc.NinjectDependencyScope.Dispose() 在 System.Net.Http.HttpRequestMessageExtensions.DisposeRequestResources(HttpRequestMessage 请求)\Projects\Ninject\ninject\src\Ninject\Infrastructure\Disposal\DisposableObject.cs:System.Net.Http.HttpRequestMessageExtensions.DisposeRequestResources(HttpRequestMessage 请求)处 Brightspot.WebApi.Ioc.NinjectDependencyScope.Dispose() 的第 33 行\Projects\Ninject\ninject\src\Ninject\Infrastructure\Disposal\DisposableObject.cs:System.Net.Http.HttpRequestMessageExtensions.DisposeRequestResources(HttpRequestMessage 请求)上 Brightspot.WebApi.Ioc.NinjectDependencyScope.Dispose() 的第 33 行