我想'发送'包含数字(双)的集合。 我尝试将数组添加到我的DataContract但它失败了(通过异常......当我注意数组类型时它的工作正常)。
我该怎么做?
感谢您的帮助。
答案 0 :(得分:1)
集合序列化仅在合同中的集合是具体集合(即不是接口)并且可序列化(使用Serializable属性注释)时自动发生。如果是这种情况,只要集合包含Add操作,WCF就可以自动将集合序列化为集合类型的数组。这适用于内置的.NET集合以及任何实现IEnumerable或IEnumerable接口的自定义集合;只要它们是可序列化的并且具有Add操作,它们就可以自动序列化为数组。
如果您的集合不符合这些约束,请指定CollectionDataContractAttribute。
[CollectionDataContract(Name = "MyCollectionOf{0}")]