Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/339.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
C# XML序列化命名空间和XSD生成_C#_Xml_Xml Serialization - Fatal编程技术网

C# XML序列化命名空间和XSD生成

C# XML序列化命名空间和XSD生成,c#,xml,xml-serialization,C#,Xml,Xml Serialization,是否有一种方法可以控制序列化对象时XmlSerializer生成命名空间和XSD的顺序,或者至少可以控制它在标头中生成的内容 我得到的代码生成了以下xml,在另一台pc上,名称空间和XSD的顺序被切换,通常我怀疑这会是一个问题,但我正在对结果进行散列,因此它会导致我的散列发生变化 <?xml version="1.0"?> <License xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http

是否有一种方法可以控制序列化对象时XmlSerializer生成命名空间和XSD的顺序,或者至少可以控制它在标头中生成的内容

我得到的代码生成了以下xml,在另一台pc上,名称空间和XSD的顺序被切换,通常我怀疑这会是一个问题,但我正在对结果进行散列,因此它会导致我的散列发生变化

<?xml version="1.0"?>
<License xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    ...
</License>

...

假设您目前只是让xml序列化程序自己处理它: 通过在类中实现IXmlSerializable接口,可以很好地实现所需的结果


通过这种方式,您可以显式定义输出到XmlWriter的文本。

感谢排序后的内容能够准确地控制xml在序列化之前输出的内容。