序列化web套接字的泛型

本文关键字:泛型 套接字 web 序列化 | 更新日期: 2023-09-27 17:51:01

我正在使用超级Web Socket一段时间,它很棒,所有的工作,我可以发送命令,没有问题。现在我试着在一个命令中发送大量命令,我发现如果我发送很多小命令,websocketStart的工作非常慢,所以我用新的命令来收集一些命令并一次性发送它们。我正在处理连载问题,如果你能帮我,我会很高兴的。我的命令将把BulkCMD_Structure发送到客户端。我只得到commanddid在数组中:(

 #region BulkCommand
[Serializable]
public class BulkCMD_Structure
{
    public Int64 UserID { get; set; }
    public int DataArrayLength { get; set; }
    public List<BulkCMD_Data> DataArray;
}
[Serializable]
public class BulkCMD_Data
{
    public eWebSocketCMD CommandID { get; set; }
}
[Serializable]
public class BulkWindowCMD_Data : BulkCMD_Data
{
    public int X { get; set; }
    public int Y { get; set; }
    public int Width { get; set; }
    public int Height { get; set; }
    public byte[] Image { get; set; }
}
[Serializable]
public class BulkMouseStatusCMD_Data : BulkCMD_Data
{
    public int mousePositionX { get; set; }
    public int mousePositionY { get; set; }
}
#endregion

我也尝试了以下操作,但得到序列化错误:

#region BulkCommand
[Serializable]
public class BulkCMD_Structure
{
    public Int64 UserID { get; set; }
    public int DataArrayLength { get; set; }
    public iBulkCMD_Data [] DataArray;
}
[Serializable]
public class iBulkCMD_Data
{
    eWebSocketCMD CommandID { get; set; }
}
[Serializable]
public class BulkWindowCMD_Data : iBulkCMD_Data
{
    public eWebSocketCMD CommandID { get; set; }
    public int X { get; set; }
    public int Y { get; set; }
    public int Width { get; set; }
    public int Height { get; set; }
    public byte[] Image { get; set; }
}
[Serializable]
public class BulkMouseStatusCMD_Data : iBulkCMD_Data
{
    public eWebSocketCMD CommandID { get; set; }
    public int mousePositionX { get; set; }
    public int mousePositionY { get; set; }
}
#endregion

序列化web套接字的泛型

只是把

iBulkCMD_Data [] DataArray or

列表DataArray

to object [] DataArray