SignalR客户端应用程序退出

时间:2017-01-12 13:27:33

标签: c# winforms signalr

我遇到了信号器的问题。 我写了一个服务,将文件从Web服务器发送到桌面应用程序,以便以后工作。 问题是我需要关闭应用程序,前夕我调用connection.stop,connection.dispose,hub.dispose应用程序不会关闭,我必须通过任务管理器杀死。

有人可以帮助我吗?

编辑: 这是连接初始化

this.Connection = new Microsoft.AspNet.SignalR.Client.HubConnection(SisIdsEndPoint)
        {
            DeadlockErrorTimeout = new TimeSpan(deadlockDays, deadlockHours, deadlockMinutes)
        };
        _hub = Connection.CreateHubProxy("SisIdsRemoteClientHub");
        this.Connection.Error += ConnectionOnError;
        _hub.On<string, string, string, string, string, int>("GetData", GetData);
        _hub.On<string, string>("Error", AddLog);
        _hub.On("ConnectionOk", x => ConnectionOk(x));
        _hub.On("DisconnectOk", x => DisconnectOk(x));
        Connection.StateChanged += new Action<StateChange>(ConnChange);
        Connection.Closed += new Action(ConClosed);
        Connection.Start().Wait();
        _hub.Invoke("Hello", SisIdsApiKey, this.Utenti).Wait();

我删除了日志行之后有“GetData”方法,它是一个简单的函数,接受一些参数并保存文件。当我关闭应用程序时,我调用

Connection.Stop();
Connection.Dispose();
Connection = null;

之后我尝试了Application.Restart(),但窗口冻结并调试它将在Connection.Stop()上冻结的代码

0 个答案:

没有答案