예제 #1
0
        public static byte[] Create(PackageReqHead head, BaseReqData data)
        {
            WriteHead(head);
            WriteData(data);

            return(WriteBytesLength());
        }
예제 #2
0
        public static byte[] Create(int actionId, BaseReqData data)
        {
            var head = new PackageReqHead()
            {
                ActionId = actionId, MsgId = ++MsgCounter
            };

            WriteHead(head);
            WriteData(data);
            Console.WriteLine("Send: {0}", _sendStr);
            var bytes = WriteBytesLength();

            _sendStr = "";
            return(bytes);
        }
예제 #3
0
        public static byte[] Pack <T>(int actionId, BaseReqData data, Action <T> callback) where T : BaseResData
        {
            var head = new PackageReqHead()
            {
                ActionId = actionId, MsgId = ++MsgCounter,
                callback = (res) =>
                {
                    var obj = JsonMapper.ToObject <T>(res);
                    callback(obj);
                }
            };

            SocketClient.SendDic.Add(head.MsgId, head);
            WriteHead(head);
            WriteData(data);

            Console.WriteLine("Send: {0}", _sendStr);
            var bytes = WriteBytesLength();

            _sendStr = "";
            return(bytes);
        }
예제 #4
0
 private static void WriteData(BaseReqData data)
 {
     _sendStr += string.Format("&data={0}", JsonMapper.ToJson(data));
 }