在 .NET 中的对象序列化期间消除命名空间
在 .NET 中序列化对象时会出现此问题,其中生成的 XML 文档包含诸如如“xsi”和“xsd”。要抑制这些命名空间并获取没有命名空间属性的标记,请按照以下步骤操作:
首先,使用要序列化的对象的类型创建一个新的 XmlSerializer 对象。接下来,实例化一个 XmlSerializerNamespaces 对象,并通过调用 ns.Add("",""); 向其添加一个空命名空间。
最后,将行:
s.Serialize(xmlWriter, objectToSerialize);
替换为:
s.Serialize(xmlWriter, objectToSerialize, ns);
此修改确保 XmlSerializer 使用 ns 中定义的空命名空间,从而导致没有任何命名空间属性的序列化 XML 文档:
<message> ... </message>
以上是在 .NET 中序列化对象时如何从 XML 中删除命名空间?的详细内容。更多信息请关注PHP中文网其他相关文章!