Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WCF和XmlSerialization以及XmlWriterSettings_Wcf_Xml Serialization - Fatal编程技术网

WCF和XmlSerialization以及XmlWriterSettings

WCF和XmlSerialization以及XmlWriterSettings,wcf,xml-serialization,Wcf,Xml Serialization,我有一个REStful的WCF web服务(使用经过大幅修改的WCF Rest初学者工具包),数据契约是简单的POCO,标记有[Serializable]和[XmlType](在适当的情况下,成员标记为[XmlElement]或[XmlAttribute]) 在WCF内部的某个地方创建了一个XmlSerializer实例,该实例生成的输出在XML节点之间没有缩进或间隔,这对于自动化流程来说很好,但由于我必须自己手动格式化XML输出,因此调试变得更加困难 我想使用XmlWriterSettings

我有一个REStful的WCF web服务(使用经过大幅修改的WCF Rest初学者工具包),数据契约是简单的POCO,标记有[Serializable]和[XmlType](在适当的情况下,成员标记为[XmlElement]或[XmlAttribute])

在WCF内部的某个地方创建了一个XmlSerializer实例,该实例生成的输出在XML节点之间没有缩进或间隔,这对于自动化流程来说很好,但由于我必须自己手动格式化XML输出,因此调试变得更加困难

我想使用XmlWriterSettings,这样它会在XML被发送到管道之前自动格式化XML,但我看不到可以在哪里注入它

我使用Reflector来查找XmlSerializer在WCF中的实例化位置,它显示在几个嵌套的内部类中,即isnide XmlSerializer,但除此之外,我还被卡住了


助教

我认为您可以控制WCF用于创建消息转录的完整XMLSerializer输出。
XmlWriterSettings
对象不会传递给构造函数到
XmlSerializer
,而是传递给
XmlWriter
,当写入对象时,该对象将传递给序列化程序。可以更改的地方是自定义消息编码器(负责在消息中的XML信息集和连接中的实际字节之间进行转换)。创建
XmlWriter
实例的自定义编码器的一个很好的示例是“.”

您使用什么来查看XML?为什么不在XML编辑器(比如VisualStudio)中查看它呢?或者使用XML可视化工具在调试器中查看它。