Beispiel #1
0
        public static void RuntimeTest()
        {
            var message = new Message("QClient", queuenmae, new EntityDemo(0));

            var mStream = message.GetEntityStream(false);
            //mStream.Position = 0;
            var desMsg = Message.Create(mStream);

            QueueItemStream item = new QueueItemStream(mStream, true);

            item.SetState(MessageState.Receiving);

            Message recMsg = item.GetMessage();

            var body = recMsg.GetBody <EntityDemo>();

            string filename = Path.Combine(@"D:\Nistec\Services\MQueue\Queues\Queue\Demo", Assists.GetQueueFilename(item.Identifier));

            string fname = item.SaveToFile(filename);

            QueueItemStream ritem = QueueItemStream.ReadFile(filename);

            Message rMsg = ritem.GetMessage();

            var rbody = recMsg.GetBody <EntityDemo>();

            Console.WriteLine(rbody == null? 0: rbody.EntityId);
        }
Beispiel #2
0
 public void Save(QueueItemStream message)
 {
     try
     {
         if (CoverProvider == CoverProviders.File)
         {
             string filename = GetFilename(message.Identifier);
             message.SaveToFile(filename);
             //var stream = message.Serialize(true);
             //stream.SaveToFile(filename);
         }
         else
         {
             ExecCover(message);
         }
     }
     catch (Exception ex)
     {
         QLog.Exception("QCover.Save ", ex);
     }
 }