"Server error in application" / ". Sequence contains no elements" after namespace refactoring

I am using MVC 4 and Ninject 3 with NinjectWebCommon in the App_Start folder.

And my Global.asax.cs is MvcApplication: HttpApplication

I get the error below because Ninject starts twice - Why?

Server Error in '/' Application. Sequence contains no elements Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.InvalidOperationException: Sequence contains no elements Source Error: Line 50: kernelInstance = createKernelCallback(); Line 51: Line 52: kernelInstance.Components.GetAll<INinjectHttpApplicationPlugin>().Map(c => c.Start()); Line 53: kernelInstance.Bind<IHttpModule>().To<HttpApplicationInitializationHttpModule>(); Line 54: kernelInstance.Inject(this); Source File: c:\Projects\Ninject\Ninject.Web.Common\src\Ninject.Web.Common\Bootstrapper.cs Line: 52 Stack Trace: [InvalidOperationException: Sequence contains no elements] System.Linq.Enumerable.Single(IEnumerable`1 source) +315 Ninject.Web.Mvc.NinjectMvcHttpApplicationPlugin.Start() in c:\Projects\Ninject\ninject.web.mvc\mvc3\src\Ninject.Web.Mvc\NinjectMvcHttpApplicationPlugin.cs:53 Ninject.Web.Common.Bootstrapper.<Initialize>b__0(INinjectHttpApplicationPlugin c) in c:\Projects\Ninject\Ninject.Web.Common\src\Ninject.Web.Common\Bootstrapper.cs:52 Ninject.Infrastructure.Language.ExtensionsForIEnumerableOfT.Map(IEnumerable`1 series, Action`1 action) in c:\Projects\Ninject\ninject\src\Ninject\Infrastructure\Language\ExtensionsForIEnumerableOfT.cs:32 Ninject.Web.Common.Bootstrapper.Initialize(Func`1 createKernelCallback) in c:\Projects\Ninject\Ninject.Web.Common\src\Ninject.Web.Common\Bootstrapper.cs:52 Company.App.App_Start.NinjectWebCommon.Start() in c:\Development\Company\trunk\src\App\App_Start\NinjectWebCommon.cs:29 [TargetInvocationException: Exception has been thrown by the target of an invocation.] System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) +0 System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) +192 System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +108 System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) +19 WebActivator.BaseActivationMethodAttribute.InvokeMethod() +236 WebActivator.ActivationManager.RunActivationMethods() +534 WebActivator.ActivationManager.RunPreStartMethods() +41 WebActivator.ActivationManager.Run() +64 [InvalidOperationException: The pre-application start initialization method Run on type WebActivator.ActivationManager threw an exception with the following error message: Exception has been thrown by the target of an invocation..] System.Web.Compilation.BuildManager.InvokePreStartInitMethodsCore(ICollection`1 methods, Func`1 setHostingEnvironmentCultures) +550 System.Web.Compilation.BuildManager.InvokePreStartInitMethods(ICollection`1 methods) +132 System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath) +90 System.Web.Compilation.BuildManager.ExecutePreAppStart() +135 System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +516 [HttpException (0x80004005): The pre-application start initialization method Run on type WebActivator.ActivationManager threw an exception with the following error message: Exception has been thrown by the target of an invocation..] System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9874568 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254 Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18044 
+7
c # asp.net-mvc asp.net-mvc-4 ninject
source share
3 answers

This was caused when I reorganized the namespaces and binary name.

This meant that the old copy of the dll with the old name was still in the bin folder.

This meant that both libraries were activated at startup.

A Clear did not delete it, so I deleted it manually and the problem disappeared.

+34
source share

I ran into this problem and spent a couple of hours trying to find various recommendations on the Internet. The thing that fixed it, after all, was to check the circular references to namespaces in my project. Take a look at your .csproj files and verify all links are correct.

0
source share

For me, I accidentally installed ninject in a non-web project, removing it from my data project, solved the problem for me.

0
source share

All Articles