客户端向服务端发送心跳包,服务端接收到心跳包后回发数据,回发的时候会出现异常
基础连接已经关闭: 连接被意外关闭
心跳包代码
ChannelBase.workObject.GetReciveMsg("[:BATE]-" + ConfigurationManager.AppSettings["Serial"] + "");
中心接收到心跳包 ,并用委托执行回发
if (msg.Contains("[:BATE]"))
{
string[] workNum = msg.Split('-');
int i=WorkList.Connection(workNum[1]);
if (i == 1)
{
ChannelBase.sendOders.SendToWork("连接正常", workNum[1]);
}
}
/// <summary>
/// 发送指令给指定业务端
/// </summary>
/// <param name="lisMessages"></param>
public void SendToWork(string orders,string workNum)
{
if (OnOrder != null)
{
SendOrder del = WorkDelegateList.GetDelegate(workNum, Enums.WorkDelegateType.order) as SendOrder;
if (del == null)
{
}
else
{
try
{
del(this, orders);
}
catch
{
}
}
}
else
{
}
}
在del()这个地方老是会报 基础连接已经关闭: 连接被意外关闭 这个。
但是在局域网是正常的,不会报错,外网才会报错