点击或拖拽改变大小

NetworkDoubleBaseTNetMessage, TTransform

支持长连接,短连接两个模式的通用客户端基类 -> Universal client base class that supports long connections and short connections to two modes
继承层次
SystemObject
  HslCommunication.Core.NetNetworkBase
    HslCommunication.Core.NetNetworkDoubleBaseTNetMessage, TTransform
      更多...

命名空间:  HslCommunication.Core.Net
程序集:  HslCommunication (在 HslCommunication.dll 中) 版本:8.2.1.0 (8.2.1.0)
语法
public class NetworkDoubleBase<TNetMessage, TTransform> : NetworkBase, 
	IDisposable
where TNetMessage : new(), INetMessage
where TTransform : new(), IByteTransform

类型参数

TNetMessage

[缺少 "T:HslCommunication.Core.Net.NetworkDoubleBase`2" 的 <typeparam name="TNetMessage"/> 文档]

TTransform

[缺少 "T:HslCommunication.Core.Net.NetworkDoubleBase`2" 的 <typeparam name="TTransform"/> 文档]

NetworkDoubleBaseTNetMessage, TTransform 类型公开以下成员。

构造函数
属性
  名称说明
公共属性AlienSession
当前的异形连接对象,如果设置了异形连接的话
公共属性代码示例ByteTransform
当前客户端的数据变换机制,当你需要从字节数据转换类型数据的时候需要。-> The current client's data transformation mechanism is required when you need to convert type data from byte data.
公共属性ConnectionId
当前连接的唯一ID号,默认为长度20的guid码加随机数组成,方便列表管理,也可以自己指定
公共属性代码示例ConnectTimeOut
获取或设置连接的超时时间,单位是毫秒 -> Gets or sets the timeout for the connection, in milliseconds
公共属性代码示例IpAddress
获取或是设置服务器的IP地址
公共属性代码示例LogNet
组件的日志工具,支持日志记录
(继承自 NetworkBase。)
公共属性代码示例Port
获取或设置服务器的端口号
公共属性代码示例ReceiveTimeOut
获取或设置接收服务器反馈的时间,如果为负数,则不接收反馈 -> Gets or sets the time to receive server feedback, and if it is a negative number, does not receive feedback
公共属性代码示例Token
网络类的身份令牌
(继承自 NetworkBase。)
公共属性UseSynchronousNet
是否使用同步的网络通讯
(继承自 NetworkBase。)
Top
方法
  名称说明
受保护的方法AccountCertificate
认证账号,将使用已经设置的用户名和密码进行账号认证。
受保护的方法CheckRemoteToken
检查当前的头子节信息的令牌是否是正确的
(继承自 NetworkBase。)
公共方法代码示例ConnectClose
在长连接模式下,断开服务器的连接,并切换到短连接模式
公共方法代码示例ConnectServer
切换短连接模式到长连接模式,后面的每次请求都共享一个通道
公共方法代码示例ConnectServer(AlienSession)
使用指定的套接字创建异形客户端
受保护的方法代码示例CreateSocketAndConnect(IPEndPoint, Int32)
创建一个新的socket对象并连接到远程的地址
(继承自 NetworkBase。)
受保护的方法代码示例CreateSocketAndConnect(String, Int32)
创建一个新的socket对象并连接到远程的地址,默认超时时间为10秒钟
(继承自 NetworkBase。)
受保护的方法代码示例CreateSocketAndConnect(String, Int32, Int32)
创建一个新的socket对象并连接到远程的地址
(继承自 NetworkBase。)
公共方法Dispose
释放当前的资源
受保护的方法Dispose(Boolean)
释放当前的资源,并自动关闭长连接,如果设置了的话
公共方法Equals (继承自 Object。)
受保护的方法ExtraAfterReadFromCoreServer
和服务器交互完成的时候调用的方法,无论是成功或是失败,都将会调用,具体的操作需要重写实现
受保护的方法代码示例ExtraOnDisconnect
在将要和服务器进行断开的情况下额外的操作,需要根据对应协议进行重写
受保护的方法Finalize (继承自 Object。)
受保护的方法GetAvailableSocket
获取本次操作的可用的网络套接字
公共方法GetHashCode (继承自 Object。)
公共方法GetType (继承自 Object。)
受保护的方法代码示例InitializationOnConnect
连接上服务器后需要进行的初始化操作
受保护的方法MemberwiseClone (继承自 Object。)
公共方法代码示例ReadFromCoreServer(Byte)
使用底层的数据报文来通讯,传入需要发送的消息,返回一条完整的数据指令
公共方法代码示例ReadFromCoreServer(Socket, Byte)
在其他指定的套接字上,使用报文来通讯,传入需要发送的消息,返回一条完整的数据指令
受保护的方法ReadStream
读取流中的数据到缓存区
(继承自 NetworkBase。)
受保护的方法Receive
接收固定长度的字节数组
(继承自 NetworkBase。)
受保护的方法ReceiveAndCheckBytes
[自校验] 接收一条完整的同步数据,包含头子节和内容字节,基础的数据,如果结果异常,则结束通讯
(继承自 NetworkBase。)
受保护的方法ReceiveAsync
接收固定长度的字节数组
(继承自 NetworkBase。)
受保护的方法ReceiveByMessage
接收一条完整的 数据内容 -> Receive a complete data content
(继承自 NetworkBase。)
受保护的方法ReceiveBytesContentFromSocket(Socket)
[自校验] 从网络中接收一串字节数据,如果结果异常,则结束通讯
(继承自 NetworkBase。)
受保护的方法ReceiveBytesContentFromSocket(Socket, Int32)
[自校验] 从网络中接收一串字节数据,如果结果异常,则结束通讯
(继承自 NetworkBase。)
受保护的方法ReceiveStringArrayContentFromSocket
[自校验] 从网络中接收一个字符串数组,如果结果异常,则结束通讯
(继承自 NetworkBase。)
受保护的方法ReceiveStringContentFromSocket
[自校验] 从网络中接收一个字符串数据,如果结果异常,则结束通讯
(继承自 NetworkBase。)
受保护的方法Send
发送消息给套接字,直到完成的时候返回
(继承自 NetworkBase。)
受保护的方法SendAccountAndCheckReceive
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯
(继承自 NetworkBase。)
受保护的方法SendAsync
发送一个异步的数据信息,该方式在NET35里是不可用的。
(继承自 NetworkBase。)
受保护的方法SendBaseAndCheckReceive
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯
(继承自 NetworkBase。)
受保护的方法SendBytesAndCheckReceive
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯
(继承自 NetworkBase。)
受保护的方法SendStringAndCheckReceive(Socket, Int32, String)
[自校验] 直接发送字符串数据并确认对方接收完成数据,如果结果异常,则结束通讯
(继承自 NetworkBase。)
受保护的方法SendStringAndCheckReceive(Socket, Int32, String)
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯
(继承自 NetworkBase。)
公共方法SetLoginAccount
设置当前的登录的账户名和密码信息,账户名为空时设置不生效
公共方法代码示例SetPersistentConnection
在读取数据之前可以调用本方法将客户端设置为长连接模式,相当于跳过了ConnectServer的结果验证,对异形客户端无效
受保护的方法ThreadPoolCheckTimeOut
检查网络套接字是否操作超时,需要对套接字进行封装
(继承自 NetworkBase。)
公共方法ToString
返回表示当前对象的字符串
(重写 NetworkBaseToString.)
受保护的方法WriteStream
将缓冲区的数据写入到流里面去
(继承自 NetworkBase。)
Top
字段
  名称说明
受保护的字段CoreSocket
通讯类的核心套接字
(继承自 NetworkBase。)
受保护的字段InteractiveLock
交互的混合锁
受保护的字段isPersistentConn
是否是长连接的状态
受保护的字段IsSocketError
当前的socket是否发生了错误
受保护的字段isUseAccountCertificate
是否使用账号登录
受保护的字段receiveTimeOut
接收数据的超时时间
Top
示例
无,请使用继承类实例化,然后进行数据交互,当前的类并没有具体的实现。
参见
继承层次
SystemObject
  HslCommunication.Core.NetNetworkBase
    HslCommunication.Core.NetNetworkDoubleBaseTNetMessage, TTransform
      HslCommunication.Core.NetNetworkDeviceBaseTNetMessage, TTransform
      HslCommunication.EnthernetNetSimplifyClient
      HslCommunication.Enthernet.RedisRedisClient
      HslCommunication.Profinet.IDCardSAMTcpNet
      HslCommunication.Profinet.OpenProtocolOpenProtocolNet
      HslCommunication.Robot.EFORTER7BC10
      HslCommunication.Robot.EFORTER7BC10Previous
      HslCommunication.Robot.KUKAKukaAvarProxyNet
      HslCommunication.Robot.YASKAWAYRC1000TcpNet