【发布时间】:2010-12-12 13:05:31
【问题描述】:
为什么不能使用IEnumerable<T> 作为类中属性的类型
例如像
public class Example
{
public IEnumerable<Int32> Ids {get; private set;}
publicIEnumerable<string> Names {get; private set;}
}
对不起,问题不在于它没有编译,我错过了在这里写东西的公共访问者,问题是为什么不使用 IEnumerable 作为属性。但当我进一步阅读时,我意识到如果我们只需要迭代而不修改(添加、删除),那么(使用 IEnumerable )是完全可以接受的。
【问题讨论】:
-
认为 stylecop 抱怨它。我也不确定为什么
-
如果你有一个“为什么不编译”的问题,你至少可以包含编译器错误。
-
@devrooms 您具体指的是哪个规则?我从来没有抱怨过使用 IEnumerable
作为属性类型。事实上,我一直都这样做。
标签: c# .net compiler-errors