CS0446-os fordítási hiba

A Foreach nem tud "metóduson vagy meghatalmazotton" működni. Meg akarta hívni a metódust vagy a meghatalmazottat?

Ezt a hibát az okozza, hogy zárójelek nélküli metódust vagy névtelen metódust ad meg zárójelek nélkül az foreach utasítás azon részében, amelyben általában egy gyűjteményosztályt helyezne el. Vegye figyelembe, hogy bár szokatlan, hogy metódushívást kell elhelyezni ezen a helyen, ha a metódus gyűjteményosztályt ad vissza.

Példa

Az alábbi kód létrehozza a CS0446-ot.

// CS0446.cs  
using System;  
class Tester
{  
    static void Main()
    {  
        int[] intArray = new int[5];  
        foreach (int i in M) { } // CS0446  
    }  
    static void M() { }  
}