我有一个字典数据结构,必须使用WCF传递。为此,我使用get和set方法创建了一个成员属性。我可以basicly实现相同的功能,与此属性是无论是:IList <KeyValuePair>与IDictionary充当WCF中的[DataMember]
IDictionary<keyType, valueType>
或
IList<KeyValuePair<keyType, valueType>>
我可以看到选择一个比其他任何强有力的理由。我能想到的一个温和的重复是:
IDictionary - 阅读代码的人会认为IDictionary更有意义,因为数据结构是字典,但就通过WCF传递的内容而言,它们都是相同的。
任何人都可以想到选择IList的理由吗?如果没有,我只需要与IDictionary一起去。
消费者是我自己的代码,唯一的属性是使WCF的数据结构可序列化。 getter setter所做的唯一事情就是枚举结构的成员,所以你可以选择IEnumerable看起来像最简单的东西,可以工作,这总是很好:-) – 2010-11-04 05:07:04
@David:“该属性的唯一目的是使数据结构由WCF序列化“。我不能声称在没有看到代码的情况下完全理解你的场景,但是这听起来像你在设计中可能有一些混合的抽象层次,这导致这样的决定过于复杂。 – 2010-11-04 05:25:52
你能评论一下吗? – 2010-11-04 07:04:40