如何告诉MessageQueue.SendMessageConnection如何"XMLize"要发送的对象?

How to tell MessageQueue.SendMessageConnection how to "XMLize" the object to be sent?

我在 C# 中使用 System.Messaging.MessageQueue.SendMessageConnection 发送对象,其中包含一些参数,例如:

_sendQueue.Send(myObject, ...);

我的myObject是一个对象,包含一些属性,比如Field1

我正在检查我的消息是如何发送的,使用:

我看到的标签如下:

<Field1>content_Field1</Field1>

而不是这个,我想看到这样的东西:

<F1>content_Field1</F1>

我的对象中的属性和我想使用的 XML 标签之间是否有简单的映射?

提前致谢

这其实很容易做到。查看 Control XML serialization using attributes :

By default, an XML element name is determined by the class or member name. In a simple class named Book, a field named ISBN will produce an XML element tag , as shown in the following example.

public class Book
{
    public string ISBN;
}
// When an instance of the Book class is serialized, it might
// produce this XML:
// <ISBN>1234567890</ISBN>.

This default behavior can be changed if you want to give the element a new name. The following code shows how an attribute enables this by setting the ElementName property of a XmlElementAttribute.

public class TaxRates {
    [XmlElement(ElementName = "TaxRate")]
    public decimal ReturnTaxRate;
}

- 截至 2017 年 3 月 30 日的 Microsoft 文章,各种作者(我强调)

整篇文章大约需要 6 分钟阅读时间,我真的很推荐它。