WCF序列化异常 - NetDataContractSerializer

Ami*_*esh 5 c# wcf-serialization

我在尝试将数据集合发送到我们的服务时收到错误.但是,如果我只将一个项目添加到集合中,那么它会产生罚款.一旦我添加了多个项目,我就会收到以下错误

NetDataContractSerializer不支持使用类型"SmartTrade.Shared.Common.PaymentTerm"作为只获取集合.请考虑使用CollectionDataContractAttribute属性或SerializableAttribute属性标记类型,或者向属性添加setter.

所以这里需要注意的关键是我可以使用单个项目发送集合(IList <>).我已将MaxReceivedMessageSize和MaxArrayLength增加到我认为更合理的范围.

任何人都可以帮助我

Ami*_*esh 3

最后我解决了。其中一个基类中有一个属性只有 getter 属性而没有 setter 属性。所以我必须添加一个setter属性

  • 您能解释一下为什么需要设置器属性吗? (2认同)