微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – xsd.exe属性顺序

我的目标是将c#类序列化为 XML,其属性顺序类似于我的类中的属性顺序.对于这个purporse,我需要在我的类中的其他属性之前添加System.Xml.Serialization.XmlElementAttribute(Order = int).

[System.Xml.Serialization.XmlElementAttribute("F4INVAL",Form=System.Xml.Schema.XmlSchemaForm.Unqualified,Order=1)]
    public F4invalType[] F4INVAL {
        get {
            return this.f4INVALField;
        }
        set {
            this.f4INVALField = value;
        }
    }

我有XSD文件(f4form_2012_3.xsd).

使用Xsd.exe(http://msdn.microsoft.com/en-en/library/x6c1kb0s.aspx)我执行此scriptlet来生成一组C#类:

xsd f4form_2012_3.xsd /order /classes

我需要使用C#属性[System.Xml.Serialization.XmlElementAttribute(Order = 1)]获取属性.我这样做,但是第一类’属性有这个属性.

第二个和下面的类没有它.

请检查f4form_2012_3.cs

这是什么意思?

解决方法

这是因为您的F4ReportType复杂类型是XSD中使用xsd:sequence元素的唯一类型.您不能对从XML属性生成属性进行排序,因为属性不是按XML排序的.也许您想要使用XML元素.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐