У меня есть служба WCF 4 с двумя конечными точками, настроенными на использование wsHttpBinding и netTcpBinding. Я размещаю службу в IIS 7. 5 с помощью WAS, и я использую расширение Ninject WCF для DI в своей службе. Моя служба работает нормально, когда я использую конечную точку wsHttpBinding для вызова моей службы, но не работает, когда я использую netTcpBinding. Когда я смотрю в свой журнал событий приложения, я получаю следующую ошибку, описанную ниже:
Я попытался отладить проблему в VS2010, но быстро ничего не добился. Я не хочу удалять Ninject из моей службы WCF, если это вообще возможно. Я понимаю, что могу просто использовать wsHttpBinding, но это внутренняя служба, и я хочу получить прирост производительности, обеспечиваемый netTcpBindings.
WebHost failed to process a request.
Sender Information: System.ServiceModel.ServiceHostingEnvironment+HostingManager/30180123
Exception: System.ServiceModel.ServiceActivationException: The service '/ProfileService.svc' cannot be activated due to an exception during compilation. The exception message is: Cannot be null
Parameter name: root. ---> System.ArgumentNullException: Cannot be null
Parameter name: root
at Ninject.Infrastructure.Ensure.ArgumentNotNull(Object argument, String name) in c:\Projects\Ninject\ninject\src\Ninject\Infrastructure\Ensure.cs:line 20
at Ninject.ResolutionExtensions.Get[T](IResolutionRoot root, IParameter[] parameters) in c:\Projects\Ninject\ninject\src\Ninject\Syntax\ResolutionExtensions.cs:line 37
at System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses)
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.CreateService(String normalizedVirtualPath)
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.ActivateService(String normalizedVirtualPath)
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
--- End of inner exception stack trace ---
at System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath)
at System.ServiceModel.ServiceHostingEnvironment.EnsureServiceAvailableFast(String relativeVirtualPath)
Process Name: w3wp
Process ID: 8656
Есть ли кто-нибудь, кто может помочь с этой проблемой? Мы будем очень благодарны за любую помощь по этому поводу.