我有一个带有简单SignalR设置和集线器的ASP.NET Web应用程序。当我发布文件时,它会生成web / packages.config和/ bin / dlls。
在客户端,我也可以轻松访问IIS上的集线器:
var hubConnection = new HubConnection("http://localhost:80");
IHubProxy proxy = hubConnection.CreateHubProxy("TestHub");
当我访问http://localhost/signalr/hubs时,我可以看到生成的集线器,但它究竟是如何工作的?我无法在IIS文件夹中找到/ signalr / hubs目录。 何时以及如何生成?
答案 0 :(得分:2)
根本没有生成目录,它从不存在。
一般的ASP.NET和Web框架是路由器。基本上,您熟悉静态文件处理程序(处理" /myFolder/myFile.doc"等路径)并将文件提供给浏览器。
但是,您还需要一种执行代码的方法。由于对Web服务器执行请求的主要方式是REST; Web框架将某些URL-verb组合路由到代码处理程序。这就是WebAPI和MVC的工作方式。在SignalR的情况下,它注册" / signalr / hubs"路由并在请求该路由时返回生成的javascript文件。