Beispiel #1
0
 private static void mqCALCMQClientClient_ActionEventMessage(EventMessageResult result)
 {
     if (result.EventMessageBytes.EventMessageMarkcode == "CALC")
     {
         var message = MessageSerializerFactory.CreateMessageSerializerInstance("json")
                 .DeserializeByte<object>(result.MessageBytes);
         result.IsOperationOk = true; //处理成功
         Console.WriteLine(message.ToString());
     }
 }
        /// <summary>
        /// 生成EventMessageResult对象。
        /// </summary>
        /// <param name="bytes">流</param>
        /// <returns>EventMessageResult instance.</returns>
        internal static EventMessageResult BuildEventMessageResult(byte[] bytes)
        {
            var eventMessage =
                MessageSerializerFactory.CreateMessageSerializerInstance("json").DeserializeByte <EventMessage>(bytes);

            var result = new EventMessageResult
            {
                MessageBytes      = eventMessage.EventMessageBytes,
                EventMessageBytes = eventMessage
            };

            return(result);
        }
        /// <summary>
        /// 创建EventMessage传输对象。
        /// </summary>
        /// <param name="originObject">原始强类型对象实例。</param>
        /// <param name="eventMessageMarkcode">消息的标记码。</param>
        /// <typeparam name="T">原始对象类型。</typeparam>
        /// <returns>EventMessage.</returns>
        public static EventMessage CreateEventMessageInstance <T>(T originObject, string eventMessageMarkcode)
            where T : class, new()
        {
            var result = new EventMessage()
            {
                CreateDateTime       = DateTime.Now,
                EventMessageMarkcode = eventMessageMarkcode
            };

            var bytes = MessageSerializerFactory.CreateMessageSerializerInstance("json").SerializerBytes <T>(originObject);

            result.EventMessageBytes = bytes;

            return(result);
        }