Frage

Was mehr richtig sein soll oder was empfohlen wird in VB.NET von beiden Reflexionen gegen die späte Bindung:

'Type can be various objects that have a common property for sure.'
Dim type = sender.GetType()
Dim prop = type.GetProperty("Text", 20)
Dim value = property.GetValue(sender, Nothing)

Vergleich:

Dim value = sender.Text
War es hilfreich?

Lösung

Unter den Abdeckungen sie beide das gleiche tun (relativ gesehen). VB.NET Spät-Funktion Bindung erfolgt über Montagemetadatenabfragen zur Laufzeit durchgeführt, die genau das, was Reflexion auf sich hat.

Einer der Vorteile für Ihren ersten Ansatz ist, dass Sie die Möglichkeit, Griff-Fehler in einen haben feinkörnig Weise.

Andere Tipps

Ist das nicht sender.Text immer wenn ein String? So ist die Art von Wert kann bei der Kompilierung abgeleitet werden, letztere macht ein Beispiel für frühe Bindung?

Wenn Sie zu spät verwenden zu binden, können Sie die Methode, dass Extrakte, die Eigenschaften in einer Teilklasse mit Option Explicit = Off setzen. Auf diese Weise, haben Sie immer die Typprüfung im Rest des Codes haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top