如何初始化接受IEnumerable的字段

时间:2011-04-10 16:15:46

标签: c#-4.0 ienumerable

我有一个属性public IEnumerable<T> PieceMovement { get; set; }

我应该使用什么对象来初始化此属性。我认为IEnumerable的最简单的.net实现会做什么,但那个对象会是什么,这是正确的想法吗?

2 个答案:

答案 0 :(得分:1)

您应该使用List<T>ReadOnlyCollection<T>

如果您根据现有序列对其进行初始化,则可以将其设置为LINQ查询。

答案 1 :(得分:1)

这个问题与IEnumerable并没有严格的关系,而是与一般的优秀OOP设计实践有关。

由于您将PieceMovement公开为IEnumerable,因此实现IEnumerable的每个对象都是一个不错的选择。

你永远不应该对实际类型进行抨击,这样你的想法对我好。我也经常使用List