C# 将XML序列化(通过IXmlSerializable)为XmlDocument

C# 将XML序列化(通过IXmlSerializable)为XmlDocument,c#,xml,biztalk,C#,Xml,Biztalk,我正试图从一个类的实例编写一个XmlDocument来传递给BizTalk(2006 R2,如果有必要的话)。我之所以实现IXmlSerializable,是因为我相信它会给我最大的灵活性(不一定总是将此对象写入XmlDocument并传递给BizTalk) 因此,我已经实现了IXmlSerializable,现在我想使用Write()方法创建要传递给BizTalk的实际XmlDocument实例。比如: XmlDocument xDoc = new XmlDocument(); xDoc.Lo

我正试图从一个类的实例编写一个XmlDocument来传递给BizTalk(2006 R2,如果有必要的话)。我之所以实现IXmlSerializable,是因为我相信它会给我最大的灵活性(不一定总是将此对象写入XmlDocument并传递给BizTalk)

因此,我已经实现了IXmlSerializable,现在我想使用Write()方法创建要传递给BizTalk的实际XmlDocument实例。比如:

XmlDocument xDoc = new XmlDocument();
xDoc.LoadXml(XmlWriter.Create(this.Write());
显然上面的方法不起作用:我很确定它甚至不能编译。。。但这就是我想要的功能


是否有人对此有一个固定的解决方案,或者我可以去哪里寻找示例或教程?

IXmlSerializable
是在您想要添加自定义序列化逻辑时实现的,这意味着您需要使用
XmlSerializer
让它调用您的实现逻辑

XmlSerializer ser = new XmlSerializer(this.GetType());
ser.Serialize(stream, this);
流可以是
XmlWriter
TextWriter
stream
,您可以根据需要将其加载到
XmlDocument

这里有更多的信息


啊!这更有意义。我不知道为什么我完全忘记了XmlSerializer。。。