【发布时间】:2015-09-10 17:10:21
【问题描述】:
我有许多针对 .NET Micro Framework 4.3.2 的项目。我在 Visual Studio 2013 中开发了它们。我刚刚升级到 Visual Studio 2015,现在我在编译和运行相同的代码时遇到了奇怪的问题。
具体来说,我已经开始收到此错误:
CS1579 foreach 语句无法对“string”类型的变量进行操作,因为“string”不包含“GetEnumerator”的公共定义
而且很公平,它似乎没有。 但这在我开发代码时起作用。它被编译、推送到 NuGet 并在其他几个项目中工作,所以它必须工作。
那么,为什么这在 Visual Studio 2015 中停止工作了?我有很多项目使用这个习惯用法来遍历字符串中的字符,我希望我不必全部更改它们...... :(
【问题讨论】:
-
似乎无法使用新编译器和所有内容在常规 .NET 或 .NET for Windows Store 应用程序项目中重现。毕竟可能是一个微框架问题。
-
它确实有效:rextester.com/BQUY75614 所以,这可能是 c#6 的变化
-
在 VS 2015 中使用 .NET Framework 4、4.5 和 4.6 对我来说效果很好。这一定是一个微框架问题。
-
您确定要在两个 Visual Studio 中使用相同的 Fx 版本 4.3.2?
-
@HenkHolterman 是肯定的。我正在使用 Netduino.IP,并且只有一个版本可用。它适用于 VS2013,但不适用于 2015。
标签: c# visual-studio-2015 .net-micro-framework c#-6.0