中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C#如何實現MSMQ的序列化和反序列化

c#
小樊
81
2024-08-12 01:22:43
欄目: 編程語言

在C#中實現MSMQ的序列化和反序列化可以通過使用BinaryFormatter進行序列化和反序列化操作。以下是一個簡單的示例代碼:

using System;
using System.Messaging;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;

namespace MSMQSerialization
{
    public class MessageObject
    {
        public string Message { get; set; }
    }

    class Program
    {
        static void Main(string[] args)
        {
            MessageObject messageObj = new MessageObject();
            messageObj.Message = "Hello MSMQ!";

            // 序列化消息對象
            BinaryFormatter formatter = new BinaryFormatter();
            MemoryStream stream = new MemoryStream();
            formatter.Serialize(stream, messageObj);

            // 發送消息到MSMQ隊列
            MessageQueue queue = new MessageQueue(@".\Private$\MyQueue");
            Message message = new Message();
            message.BodyStream = stream;
            queue.Send(message);

            // 從MSMQ隊列接收消息并反序列化
            Message receivedMessage = queue.Receive();
            receivedMessage.BodyStream.Position = 0;
            MessageObject receivedObj = (MessageObject)formatter.Deserialize(receivedMessage.BodyStream);

            Console.WriteLine("Received message: " + receivedObj.Message);

            queue.Close();
        }
    }
}

在這個示例中,我們首先創建了一個MessageObject類來存儲消息內容。然后我們使用BinaryFormatter來序列化MessageObject對象,并將序列化后的數據發送到MSMQ隊列。接著從隊列中接收消息,并通過反序列化操作將消息內容提取出來并打印出來。

請注意,這里的示例只是一個簡單的示例,實際生產環境中可能需要更復雜的消息對象和處理邏輯。

0
临沧市| 乌鲁木齐市| 衡山县| 马尔康县| 潼南县| 县级市| 巴中市| 惠州市| 元江| 崇义县| 白银市| 增城市| 化隆| 江永县| 肥乡县| 义马市| 南雄市| 河西区| 隆化县| 常山县| 启东市| 灵宝市| 永嘉县| 邯郸县| 新营市| 江川县| 濮阳市| 开原市| 龙里县| 湖口县| 沿河| 溆浦县| 乌拉特后旗| 长宁区| 阿勒泰市| 湄潭县| 伊通| 屏南县| 雷山县| 基隆市| 公主岭市|