Heim >Backend-Entwicklung >C++ >Wie kann ich einen Eigenschaftsnamen aus einem Lambda -Ausdruck in C#abrufen?
extrahieren Sie den Attributnamen aus dem Lambda -Expression
Die anfängliche Implementierung umfasste den konvertierenden Lambda -Ausdruck in einen Mitgliederausdruck unter der Annahme, dass das Attribut eine Zeichenfolge ist. Dies gilt jedoch nur für die String -Attribute.
Um dieses Problem zu lösen, ist eine umfassendere Methode erforderlich, die gleichzeitig String- und Nicht -String -Attribute verarbeiten kann. Die folgende Methode liefert eine Lösung:
<code class="language-csharp">public static PropertyInfo GetPropertyInfo<TSource, TProperty>( TSource source, Expression<Func<TSource, TProperty>> propertyLambda)</code>Diese Methode akzeptiert Quellobjekte und Lambda -Ausdrücke als Eingabe und gibt das Eigenschafts -Objekt zurück, das die Zugriffsattribute angibt. Wenn der Ausdruck das Attribut nicht zitiert, verursacht dies Abnormalitäten.
in der Implementierung der Methode:
Das obige ist der detaillierte Inhalt vonWie kann ich einen Eigenschaftsnamen aus einem Lambda -Ausdruck in C#abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!