2013-04-23 57 views
5

我正在關注Signalr Wiki中的集線器快速入門指南。我在RouteTable.Routes.MapHubs()行中的Global.asax,Application_Start中出現錯誤。SignalR 1.01中不需要MapHubs?

名爲'signalr.hubs'的路由已經在路由集合中。路由名稱必須是唯一的。 參數名稱:名稱

也許這不再需要在1.0.1?它在1.0中運行正常。在NuGet的readme.txt中也提到我們需要MapHubs命令。

System.ArgumentException是由用戶代碼消息未處理=名爲「signalr.hubs」 A路線 已經是路由集合英寸路線名稱 必須是唯一的。參數名稱:name Source = System.Web
ParamName = name StackTrace: at System.Web.Routing.RouteCollection.Add(String name,RouteBase item) at System.Web.Routing.RouteCollectionExtensions.Add [T](RouteCollection 路線,字符串名稱,T項) 在System.Web.Routing.RouteCollectionExtensions.MapOwinPath(RouteCollection 路線,字符串名稱,字符串pathBase,Action`1啓動) 在System.Web.Routing.SignalRRouteExtensions.MapHubs(RouteCollection 路由,字符串名稱,字符串路徑,HubConfiguration配置) at System.Web.Routing.SignalRRouteExtensions.MapHubs(RouteCollection routes,String path,HubConfiguration configuration) 在System.Web.Routing.SignalRRouteExtensions.MapHubs(RouteCollection 路線,HubConfiguration配置) 在System.Web.Routing.SignalRRouteExtensions.MapHubs(RouteCollection 路由) 在SignalrServer.Global.Application_Start(對象發件人,EventArgs e)在 C:\ RC \代碼\ Signalr \ SignalrServer \ SignalrServer \的Global.asax.cs:行18 的InnerException:

回答

6

你需要它。看起來你在你的應用中調用了兩次,不這樣做。如果你沒有明確地調用它兩次,那麼你有一個老版本的signalr,它曾經叫你爲你躺在bin文件夾中的某個地方。全部刪除,它應該工作。

+1

正確。在我的1.1升級解決方案中,App_Start文件夾中有一個使用RouteTable.Routes.MapHubs()的RegisterHubs.cs文件。刪除了這一切,一切都很好!謝謝! – robrtc 2013-04-23 09:56:20

+0

將其標記爲答案:) – davidfowl 2013-04-23 09:57:17

+0

有時它在'Global.asax'中 – Jaider 2014-02-12 20:33:18