我在窗口服务中实现了signalR.
private IDisposable SignalR { get; set; }
public void Configuration(IAppBuilder app)
{
var hubconfig=new Microsoft.AspNet.SignalR.HubConfiguration();
hubconfig.EnableJSONP = true;
app.UseCors(CorsOptions.AllowAll);
app.MapSignalR(hubconfig);
}
private void StartSignalRServer(StringBuilder sbLog)
{
try
{
this.SignalR = WebApp.Start(ServerURI); //This throws exception
//this.SignalR= WebApp.Start<Startup>(ServerURI);
sbLog.Append(string.Format("{0}--------SignalR Server Started------",Environment.NewLine));
}
catch (Exception ex)
{
sbLog.Append(string.Format("{0}Exception in StartSignalRServer=>{1}", Environment.NewLine,ex.Message));
}
}
Run Code Online (Sandbox Code Playgroud)
例外:无法找到给定输入的服务器工厂:Microsoft.Owin.Host.HttpListener
sko*_*koz 84
Microsoft.Owin.Host.HttpListener程序集是WebApp.Start中的运行时引用.您需要将其包含在项目的参考中,以便可以加载.检查bin\Debug(etc)目录以确保它包含在内.也可以将它添加为nuget依赖项.
小智 37
安装包:
PM> Install-Package -IncludePrerelease Microsoft.Owin.Host.HttpListener
Run Code Online (Sandbox Code Playgroud)
Owe*_*ing 12
使用以下命令从Nuget安装Microsoft.Owin.Host.HttpListener程序包:
PM> Install-Package Microsoft.Owin.Host.HttpListener
Run Code Online (Sandbox Code Playgroud)
(与先前的答案不同,您应避免-IncludePrerelease在生产代码中使用)
| 归档时间: |
|
| 查看次数: |
24991 次 |
| 最近记录: |