Compilerfehler CS1943

Ein Ausdruck vom Typ "Typ" ist in einer nachfolgenden from-Klausel in einem Abfrageausdruck mit dem Quelltyp "Typ" unzulässig.Fehler beim Typrückschluss im Aufruf von "Methode".

Alle Bereichsvariablen müssen abfragbare Typen repräsentieren.

So beheben Sie diesen Fehler

  1. Stellen Sie sicher, dass der Typ ein abfragbarer Typ ist, der IEnumerable, IEnumerable<T>, eine abgeleitete Schnittstelle oder einen anderen Typ mit definiertem Abfragemuster implementiert.

  2. Wenn der Typ ein nicht generischer IEnumerable ist, stellen Sie für die Bereichsvariable einen expliziten Typ bereit.

Beispiel

Durch den folgenden Code wird der Fehler CS1943 ausgelöst:

// cs1943.cs
using System.Linq;
class Test
{
    class TestClass
    { }
    static void Main()
    {
        int[] nums = { 0, 1, 2, 3, 4, 5 };
        TestClass tc = new TestClass();
        
        var x = from n in nums
                from s in tc // CS1943
                select n + s;
    }
}