我在 Mono 的帮助下在 Ubuntu 上建立了一个相当小的 ASP.Net MVC 4 网站。
我将 Ninject 用于 DI(版本 3.0.1.10,为 Mono 编译)。
一切都很好,直到我尝试将 SignalR 添加到游戏中。我已经设置了一个集线器,检查了一切是否在 Win 上运行。但是当部署到 linux 机器时,我在访问 /signalr/hubs 时出错:http: //pastebin.com/shWpzWkP
System.ArgumentNullException 参数不能为空。参数名称:
在 System.Collections.Generic.Dictionary2[System.Object,Ninject.Infrastructure.Multimap2[Ninject.Planning.Bindings.IBindingConfiguration,Ninject.Activation.Caching.Cache+CacheEntry]].TryGetValue(System.Object 键,Ninject.Infrastructure。 Multimap`2&值)[0x00000]在:0
在 Ninject.Activation.Caching.Cache.Clear (System.Object 范围) [0x00000] in :0
在 Ninject.Web.Common.OnePerRequestHttpModule+<> c_DisplayClass2.b _1 (IKernel kernel) [0x00000] in :0
在 Ninject.GlobalKernelRegistration.MapKernels (System.Action`1 动作) [0x00000] in :0
在 Ninject.Web.Common.OnePerRequestHttpModule.DeactivateInstancesForCurrentHttpRequest () [0x00000] in :0
在 Ninject.Web.Common.OnePerRequestHttpModule.b__0 (System.Object o, System.EventArgs e) [0x00000] in :0
在(包装器委托调用):invoke_void_ this __object_EventArgs(对象,System.EventArgs)
在(包装器委托调用):invoke_void_ this __object_EventArgs(对象,System.EventArgs)
在 System.Web.HttpApplication.PipelineDone () [0x00000] 在:0
我知道这是一个复杂且不受支持的场景,但我能做些什么来让它发挥作用吗?或者至少以某种方式完全禁用 SignalR 集线器的 Ninject(因为具有 SignalR 的普通站点可以在 Mono 上顺利运行)。