我的一个客户有他想要发送到我们正在创建的服务的 XML 数据。示例消息可能如下所示:
<SomeRootElement>
<Dates>
<Date>2012-05-20T00:00:00</Date>
<Date>2012-05-21T00:00:00</Date>
</Dates>
</SomeRootElement>
DataContract
我在我的 WCF 服务应用程序上定义了一个相应的类型:
[DataContract]
public class SomeRootElement {
[DataMember]
public ICollection<DateTime> Dates { get; set; }
}
问题在于,基于这个定义,WCF 希望Dates
集合看起来像:
<Dates>
<dateTime>2012-05-20T00:00:00</dateTime>
<dateTime>2012-05-21T00:00:00</dateTime>
</Dates>
有没有办法影响数组项的序列化元素名称?这曾经很容易使用 XML 序列化属性,但DataContractSerializer
忽略了这些。