Mac OSX 10.8 で Unity3D、Mono、C# を使用しています。.Net Enumerable.Zipを使用しようとしています。しかし、MSDN の例をコピーして貼り付けると、cs0117 エラーが発生します。
最小限の動作しない例:
using UnityEngine;
using System.Collections;
using System.Linq;
public class Asteroids : MonoBehaviour {
void Start () {
int[] numbers = { 1, 2, 3, 4 };
string[] words = { "one", "two", "three" };
var numbersAndWords = numbers.Zip(words, (first, second) => first + " " + second);
}
}
エラーメッセージ:
error CS1061: Type
int[]' does not contain a definition for
Zip' and no extension methodZip' of type
int[]' could be found (using ディレクティブまたはアセンブリ参照がありませんか?)
「numbers.Zip」を「Enumerable.Zip」に置き換えてみたところ、次のようになりました。
エラー CS0117:
System.Linq.Enumerable' does not contain a definition for
Zip'
なぜこれらが起こったのですか?