Compilerfehler CS1946

Ein anonymer Methodenausdruck kann nicht in eine Ausdrucksbaumstruktur konvertiert werden.

Eine anonyme Methode stellt einen Satz von Anweisungen dar, aber eine Ausdrucksbaumstruktur darf keine Anweisung enthalten. Deshalb kann eine anonyme Methode nicht von einer Ausdrucksbaumstruktur dargestellt werden.

So beheben Sie diesen Fehler

  1. Ă„ndern Sie die anonyme Methode in einen Lambdaausdruck.

Beispiel

Im folgenden Beispiel wird CS1946 generiert:

// cs1946.cs  
using System;  
    using System.Linq.Expressions;  

    public delegate void D();  

    class Test  
    {  
        static void Main()  
        {  
            Expression<D> tree = delegate() { }; //CS1946  
            // Try using a lambda expression instead.  
            // Expression<D> tree = (x) => x + 1;  
        }  
    }  

Siehe auch

Anonyme Methoden
Ausdrucksbaumstrukturen