首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >System.Collections Vs System.Collections.ObjectModel

System.Collections Vs System.Collections.ObjectModel
EN

Stack Overflow用户
提问于 2010-06-25 21:13:14
回答 3查看 6.1K关注 0票数 8

在System.Collections.ObjectModel中似乎也有特定的集合类。这两个名称空间下的集合有什么不同?我们应该在哪种情况下使用System.Collections.ObjectModel?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-06-25 21:18:19

来自MSDN

System.Collections.ObjectModel命名空间包含可用作可重用库的对象模型中的集合的类。当属性或方法返回集合时,使用这些类。

另请参阅The reason why Collection, ReadOnlyCollection, and KeyedCollection were moved to System.Collections.ObjectModel namespace

票数 9
EN

Stack Overflow用户

发布于 2010-06-25 22:47:03

System.Collections.ObjectModel类对于向外部世界公开集合非常有用。(我所说的外部世界指的是不与您的代码进行版本控制的代码。)

因此,在代码中使用泛型集合类,但是当您想要将其公开给外部世界时,请将其包装在CollectionReadOnlyCollectionObservableCollection中。

要将集合包装为键控集合,可以将KeyedCollection用作帮助器的基类。

票数 1
EN

Stack Overflow用户

发布于 2010-06-25 21:20:08

一个明显的区别是System.Collections.ObjectModel名称空间包含泛型只读集合(即没有Add、Remove和Clear方法等)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3118242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档