在一组C#类中是否可能有两组序列化属性?

在一组C#类中是否可能有两组序列化属性?,c#,serialization,attributes,C#,Serialization,Attributes,我使用XmlSerializer序列化了一组C#类。我有一个根对象,它有几个指向某些子类的属性。我使用属性来控制XMl序列化,比如元素名 问题是,现在我需要为相同的类使用第二种XML格式,而不删除第一种格式。我需要做的是创建一个“压缩”格式,其中XML元素名称将更小,但为了清晰起见,我希望保留更详细的名称。这将是用户的选择 我怎样才能在不创建第二组类的情况下实现这一点呢?好的,我纠正了,你可以这样做。看一看。(感谢@Paul Abbot的评论) 请注意,XML是冗长的,因为它应该由外部压缩算法进

我使用XmlSerializer序列化了一组C#类。我有一个根对象,它有几个指向某些子类的属性。我使用属性来控制XMl序列化,比如元素名

问题是,现在我需要为相同的类使用第二种XML格式,而不删除第一种格式。我需要做的是创建一个“压缩”格式,其中XML元素名称将更小,但为了清晰起见,我希望保留更详细的名称。这将是用户的选择


我怎样才能在不创建第二组类的情况下实现这一点呢?

好的,我纠正了,你可以这样做。看一看。(感谢@Paul Abbot的评论)


请注意,XML是冗长的,因为它应该由外部压缩算法进行压缩。通过使用不太详细的名称使XML变小需要更多的工作,但仍然不如在结果上使用压缩库好。如果希望XML更小,请压缩它

可能吗?谢谢。我知道让XML变得冗长和压缩会更好,但问题是这就是现在要做的。此XML由WCF服务返回,IIS本身使用GZIP对其进行压缩。但是请求太慢了,经过一些测量之后,我猜是压缩过程。