使用信号器处理应用程序。在本地,一切正常,但在服务器上部署时出现问题。
当我尝试在application_start()
我的集线器中解决时:
IHubContext context = GlobalHost.ConnectionManager.GetHubContext<ImageHub>();
我得到以下异常:
System.InvalidOperationException:“ImageHub”集线器无法解析。--at Microsoft.AspNet.SignalR.Hubs.HubManagerExtensions.EnsureHub(IHubManager hubManager, String hubName, IPerformanceCounter[] 计数器) --at Microsoft.AspNet.SignalR.Infrastructure.ConnectionManager.GetHubContext(String hubName)
因此,在 js 的信号器/集线器中,我没有以下 3 行:
proxies.imageHub = this.createHubProxy('imageHub');
proxies.imageHub.client = { };
proxies.imageHub.server = {
sendImages: function (filterModel, ids) {
return proxies.imageHub.invoke.apply(proxies.imageHub, $.merge(["SendImages"], $.makeArray(arguments)));
}
};
全球.asax.cs
protected void Application_Start()
{
DataAnnotationsModelValidatorProvider.RegisterAdapter(typeof(DataFormatAttribute), typeof(DataFormatValidator));
IContainer container = new InjectionConfigurationWeb().Container;
DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
GlobalHost.DependencyResolver = new Autofac.Integration.SignalR.AutofacDependencyResolver(container);
RouteTable.Routes.MapHubs();
AreaRegistration.RegisterAllAreas();
...
}
两个盒子上的服务器 iis 7.5。
Bin 文件夹在两台服务器上包含相同的 dll。
谢谢