WCF和XmlSerialization以及XmlWriterSettings
我有一个REStful的WCF web服务(使用经过大幅修改的WCF Rest初学者工具包),数据契约是简单的POCO,标记有[Serializable]和[XmlType](在适当的情况下,成员标记为[XmlElement]或[XmlAttribute]) 在WCF内部的某个地方创建了一个XmlSerializer实例,该实例生成的输出在XML节点之间没有缩进或间隔,这对于自动化流程来说很好,但由于我必须自己手动格式化XML输出,因此调试变得更加困难 我想使用XmlWriterSettings,这样它会在XML被发送到管道之前自动格式化XML,但我看不到可以在哪里注入它 我使用Reflector来查找XmlSerializer在WCF中的实例化位置,它显示在几个嵌套的内部类中,即isnide XmlSerializer,但除此之外,我还被卡住了WCF和XmlSerialization以及XmlWriterSettings,wcf,xml-serialization,Wcf,Xml Serialization,我有一个REStful的WCF web服务(使用经过大幅修改的WCF Rest初学者工具包),数据契约是简单的POCO,标记有[Serializable]和[XmlType](在适当的情况下,成员标记为[XmlElement]或[XmlAttribute]) 在WCF内部的某个地方创建了一个XmlSerializer实例,该实例生成的输出在XML节点之间没有缩进或间隔,这对于自动化流程来说很好,但由于我必须自己手动格式化XML输出,因此调试变得更加困难 我想使用XmlWriterSettings
助教 我认为您可以控制WCF用于创建消息转录的完整XMLSerializer输出。
XmlWriterSettings
对象不会传递给构造函数到XmlSerializer
,而是传递给XmlWriter
,当写入对象时,该对象将传递给序列化程序。可以更改的地方是自定义消息编码器(负责在消息中的XML信息集和连接中的实际字节之间进行转换)。创建XmlWriter
实例的自定义编码器的一个很好的示例是“.”您使用什么来查看XML?为什么不在XML编辑器(比如VisualStudio)中查看它呢?或者使用XML可视化工具在调试器中查看它。