2015-02-07 40 views
2

我刚开始使用LightInject作为我的MVC项目,它工作得很好。 但我想用它来做我的SignalR集线器。所以我按照说明http://www.lightinject.net/#signalr。但是我无法在任何地方看到ServiceContainer.RegisterHubs方法。我已经安装了LightInject,LightInject.Mvc和LightInject.SignalR dll。LightInject SignalR缺失.RegisterHubs方法

using log4net.Config; 
using LightInject; 
using Microsoft.Owin; 
using Owin; 
using MvcProject; 
using MvcProject.ApplicationServices.Interfaces.EventSignups; 

[assembly: XmlConfigurator(ConfigFile = "Web.config", Watch = true)] 
[assembly: OwinStartup(typeof (Startup))] 

namespace MvcProject 
{ 
    public class Startup 
    { 
     public void Configuration(IAppBuilder app) 
     { 
      //ConfigureAuth(app); 
      var container = new ServiceContainer(); 
      container.Register<IEventSignupService>(); 
      container.Register<IViewModelRetrieverEventCommentService>(); 
      container.Register<IViewModelRetrieverEventService>(); 
      container.RegisterHubs(); //cannot see method 

      app.MapSignalR(container.EnableSignalR()); 
     } 
    } 
} 

任何人都知道我在做什么错?

回答

1

不幸的是,这只是糟糕的文档。该方法不存在并且从不存在。您必须在LightInject Container中手动注册每个集线器。

另外,请注意issues我在更换SignalR for LightInject内的DependencyResolver时遇到过。 PS:我知道我的答案已经晚了,但仍然适用于寻找相同问题的人。