BC36548: Anonymer Typ kann nicht in eine Ausdrucksstruktur konvertiert werden, da eine Eigenschaft des Typs verwendet wird, um eine andere Eigenschaft zu initialisieren.

Der Compiler akzeptiert keine Konvertierung eines anonymen Typs in eine Ausdrucksstruktur, wenn eine Eigenschaft des anonymen Typs verwendet wird, um eine andere Eigenschaft des anonymen Typs zu initialisieren. Im folgenden Code wird z. B Prop1 . in der Initialisierungsliste deklariert und dann als Anfangswert für Prop2.

Fehler-ID: BC36548

Beispiel

Module M2

    Sub ExpressionExample(Of T)(x As Expressions.Expression(Of Func(Of T)))
    End Sub

    Sub Main()
        ' The following line causes the error.
        ExpressionExample(Function() New With {.Prop1 = 2, .Prop2 = .Prop1})
    End Sub
End Module

So beheben Sie diesen Fehler

Weisen Sie der lokalen Variablen den Anfangswert Prop1 zu. Weisen Sie diese Variable sowohl als Prop2auch Prop1 , wie im folgenden Code dargestellt, zu:

Sub Main()
    Dim temp = 2
    ExpressionExample(Function() New With {.Prop1 = temp, .Prop2 = temp})
End Sub

Siehe auch