public void Write(TSerializer oprot)
        {
            TStruct struc = new TStruct("TApplicationException");
            TField  field = new TField();

            //在流中写入TStruct的name:"TApplicationException"
            oprot.WriteStructBegin(struc);

            //判断Message是否为空
            if (!String.IsNullOrEmpty(Message))
            {
                field.Name = "message";
                field.Type = TType.String;
                field.ID   = 1;
                oprot.WriteFieldBegin(field);
                oprot.WriteString(Message);
                oprot.WriteFieldEnd();//空
            }
            //再写一个field到流中
            field.Name = "type";
            field.Type = TType.I32;
            field.ID   = 2;
            oprot.WriteFieldBegin(field);
            //在流中写入异常的类型
            oprot.WriteI32((int)type);
            oprot.WriteFieldEnd();
            //完成后写一个Stop标志 WriteByte((byte)TType.Stop)
            oprot.WriteFieldStop();
            oprot.WriteStructEnd();
        }