using System;
namespace Splash.Net.Sockets
{
/// <summary>
/// 实现TcpClient的异步查询
/// </summary>
public partial class TcpClientPlus
{
/// <summary>
/// 异步查询
/// </summary>
/// <param name="command">发送数据</param>
/// <param name="offset">起始偏移量</param>
/// <param name="size">字节数</param>
/// <param name="answer">接收数据</param>
public void Query(Byte[] command, Int32 offset, Int32 size, out Byte[] answer)
{
if (command != null)
{ // 发送数据
Write(command, offset, size);
}
// 接收数据
Read(out answer);
}
/// <summary>
/// 异步查询
/// </summary>
/// <param name="command">发送数据</param>
/// <param name="offset">起始偏移量</param>
/// <param name="size">字节数</param>
/// <param name="answer">接收数据</param>
/// <param name="codePage">代码页</param>
/// <remarks>
/// 代码页:
/// 简体中文GB2312 936
/// 简体中文GB18030 54936
/// 繁体中文BIG5 950
/// 西欧字符CP1252 1252
/// UTF-8 65001
/// </remarks>
public void Query(Byte[] command, Int32 offset, Int32 size, out String answer, Int32 codePage = 65001)
{
if (command != null)
{ // 发送数据
Write(command, offset, size);
}
// 接收数据
Read(out answer, codePage);
}
/// <summary>
/// 异步查询
/// </summary>
/// <param name="command">发送数据</param>
/// <param name="answer">接收数据</param>
public void Query(Byte[] command, out Byte[] answer)
{
if (command != null)
{ // 发送数据
Write(command);
}
// 接收数据
Read(out answer);
}
/// <summary>
/// 异步查询
/// </summary>
/// <param name="command">发送数据</param>
/// <param name="answer">接收数据</param>
/// <param name="codePage">代码页</param>
/// <remarks>
/// 代码页:
/// 简体中文GB2312 936
/// 简体中文GB18030 54936
/// 繁体中文BIG5 950
/// 西欧字符CP1252 1252
/// UTF-8 65001
/// </remarks>
public void Query(Byte[] command, out String answer, Int32 codePage = 65001)
{
if (command != null)
{ // 发送数据
Write(command);
}
// 接收数据
Read(out answer, codePage);
}
/// <summary>
/// 异步查询
/// </summary>
/// <param name="command">发送数据</param>
/// <param name="answer">接收数据</param>
/// <param name="codePage">代码页</param>
/// <remarks>
/// 代码页:
/// 简体中文GB2312 936
/// 简体中文GB18030 54936
/// 繁体中文BIG5 950
/// 西欧字符CP1252 1252
/// UTF-8 65001
/// </remarks>
public void Query(String command, out Byte[] answer, Int32 codePage = 65001)
{
if (!String.IsNullOrEmpty(command))
{ // 发送数据
Write(command, codePage);
}
// 接收数据
Read(out answer);
}
/// <summary>
/// 异步查询
/// </summary>
/// <param name="command">发送数据</param>
/// <param name="answer">接收数据</param>
/// <param name="codePage">代码页</param>
/// <remarks>
/// 代码页:
/// 简体中文GB2312 936
/// 简体中文GB18030 54936
/// 繁体中文BIG5 950
/// 西欧字符CP1252 1252
/// UTF-8 65001
/// </remarks>
public void Query(String command, out String answer, Int32 codePage = 65001)
{
if (!String.IsNullOrEmpty(command))
{ // 发送数据
Write(command, codePage);
}
// 接收数据
Read(out answer, codePage);
}
}
}