Exemple #1
0
    //解析protocol 协议
    public override void ParseData(string msgIndex, byte[] _data)
    {
        Debug.Log(msgIndex + "解析了MDaccount");
        global::ProtoBuf.IExtensible retIE = null;
        switch (msgIndex)
        {
        case "Msg_2_2_":
        {
            //Msg_2_2_ cmsg = null;
            //if (_data != null) cmsg = ProtoBuf.Serializer.Deserialize<Msg_2_2_>(new MemoryStream(_data));
            //Fun_Msg_2_2_(cmsg);
            //retIE = cmsg;


            //Msg_2_2_ cmsg = (Msg_2_2_)GDDirector.getInstance().getCurrentFactory().createProtocolType1().Deserialize(_data);
            //Fun_Msg_2_2_(cmsg);
            //retIE = cmsg;
            //IProtocolFactory factory = new ProtocolFactory();
            //Msg_2_2_ cmsg = (Msg_2_2_)factory.createProtocolType1().Deserialize(_data);
            //Fun_Msg_2_2_(cmsg);
            //retIE = cmsg;

            Msg_2_2_ cmsg = CurrProtocolManage.getInstance().Deserialize <Msg_2_2_>(_data);
            Fun_Msg_2_2_(cmsg);
            retIE = cmsg;

            break;
        }

        case "Msg_2_3_":
        {
            //Msg_2_3_ cmsg = null;
            //if (_data != null) cmsg = ProtoBuf.Serializer.Deserialize<Msg_2_3_>(new MemoryStream(_data));
            //Fun_Msg_2_3_(cmsg);
            //retIE = cmsg;

            //下面的代码解析不了
            Msg_2_3_ cmsg = CurrProtocolManage.getInstance().Deserialize <Msg_2_3_>(_data);
            Fun_Msg_2_3_(cmsg);
            retIE = cmsg;


            break;
        }

            //添加case 自动生成需要这行注释,不能删,不能改。
        }
        //return retIE;
    }
Exemple #2
0
 private void Fun_Msg_2_3_(Msg_2_3_ msg)
 {
     Debug.Log("上次所在主城ID   " + msg.loginData.cityId);
 }