Compare commits

...
2 Commits
+12 -11
View File
@@ -35,15 +35,21 @@ namespace ForwardingServerUI.Class
service.Closing = (client, e) => { return EasyTask.CompletedTask; };//有客户端正在断开连接,只有当主动断开时才有效。 service.Closing = (client, e) => { return EasyTask.CompletedTask; };//有客户端正在断开连接,只有当主动断开时才有效。
service.Closed = (client, e) => { service.Closed = (client, e) => {
//离线记录 //离线记录
Console.WriteLine("[" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "] NOT ID " +
client.Id + " IP " + client.IP);
DataRow[] dat = MainWindowViewModel._machineTable.Select("ID='"+client.Id+"'"); DataRow[] dat = MainWindowViewModel._machineTable.Select("ID='"+client.Id+"'");
foreach (DataRow row in dat) foreach (DataRow row in dat)
{ {
Application.Current.Dispatcher.Invoke(() => { Application.Current.Dispatcher.Invoke(() => {
MainWindowViewModel._machineTable.Rows.Remove(row); MainWindowViewModel._machineTable.Rows.Remove(row);
}); });
}
Console.WriteLine("[" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "] NOT ID " + client.Id + " IP " + client.IP);
Console.WriteLine("[" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "] NOT LINK ID = " +
row["ID"] + " IP = " + row["IP"] + " Enterprise = " + row["Enterprise"] +
" MachineName = " + row["MachineName"]);
}
return EasyTask.CompletedTask; return EasyTask.CompletedTask;
};//有客户端断开连接 };//有客户端断开连接
service.Received = (client, e) =>{ service.Received = (client, e) =>{
@@ -117,7 +123,7 @@ namespace ForwardingServerUI.Class
deserializedPerson.SERVERMachineName, DateTime.Now.ToString(), deserializedPerson.MachineVer); deserializedPerson.SERVERMachineName, DateTime.Now.ToString(), deserializedPerson.MachineVer);
} }
}); });
Console.WriteLine("[" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + " [LINK ID " + client.Id + " IP " + client.IP + "]\nDATA =" + DAT); Console.WriteLine("[" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + " LINK ID " + client.Id + " IP " + client.IP + "]\nDATA =" + DAT);
} }
} }
@@ -164,14 +170,9 @@ namespace ForwardingServerUI.Class
DateTime dateTime = DateTime.Parse(dataRow["HeartbeatTime"].ToString()!); DateTime dateTime = DateTime.Parse(dataRow["HeartbeatTime"].ToString()!);
if (DateTime.Now > dateTime.AddSeconds(180)) if (DateTime.Now > dateTime.AddSeconds(180))
{ {
//标记无回应连接 Console.WriteLine("[" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "] NOT LINK ID = " +
await Application.Current.Dispatcher.Invoke(async () => dataRow["ID"] + " IP = " + dataRow["IP"] + " Enterprise = " + dataRow["Enterprise"] +
{ " MachineName = " + dataRow["MachineName"] );
dataRow.BeginEdit();
dataRow["Start"] = 999;
dataRow.EndEdit();
dataRow.AcceptChanges();
});
//关闭无回应连接 //关闭无回应连接
foreach (var item in service.Clients) foreach (var item in service.Clients)