为什么String类在可移植库中实现IEnumerable <char>?</char>

时间:2012-07-19 09:20:49

标签: .net portable-class-library

我创建了一个针对.NET Framework 4和Silverlight 5的PCL项目(​​我使用Visual Studio 2010的扩展,而不是Visual Studio 2012的可移植项目模板,如果这很重要)。 我正在尝试使用System.Linq.Enumerable.Reverse<TSource>()扩展方法来反转字符串,但它不起作用,因为编译器认为System.String没有实现IEnumerable<char>

1 个答案:

答案 0 :(得分:13)

可移植类库必须将自己限制在它承诺支持的所有目标平台上可用的类和方法。这里最大的麻烦制造者是WinRT,CLR有一个语言投影,可以将WinRT类型映射到托管类型。 {(3}}中记录了投影不支持的System.String方法。 GetEnumerator()就是其中之一。