Ich habe eine Reihe von statischen "Enumerations" -Klassen, die ich verwende, um aussagekräftige Variablennamen zu speichern, die sinnlose Codewerte darstellen, die ich in einer Eingabedatei erhalte. Hier ist ein Beispiel für eins.
%Vor%Ich möchte eine Methode schreiben, die den Typ einer dieser statischen Klassen und einen Zeichenfolgenwert akzeptiert und bestimmt, ob der Wert eines der statischen Feldwerte ist. Ich weiß, wie man die Instanzfelder für ein bestimmtes Objekt bekommt, und ich weiß, wie man eine Liste von statischen Feldern für einen bestimmten Typ bekommt; Was ich nicht herausfinden kann ist, wie man die statischen Feldwerte ohne eine Instanz erhält. Hier ist, was ich bis jetzt habe.
%Vor% Ich vermute, dass ich die Aufzählungsklassen nicht statisch machen könnte, nur um eine Instanz zu erstellen, die in meiner Validierungsmethode an FieldInfo.GetValue
übergeben wird. Ich würde meine Klasse lieber so behalten, wie es ist, wenn ich kann.
Ich sehe eine Methode namens GetRawConstantValue
. Es sieht gefährlich aus. Wird mir das geben, wonach ich suche? Irgendwelche anderen Ideen?
Wenn man sich anschaut, was man im größeren Sinne versucht, passt das vielleicht besser:
%Vor% Und dann können Sie mithilfe dieses Links Intellisense-Unterstützung erhalten, die exakt mit der einer normalen Enum übereinstimmt:
Versteckte Funktionen von VB.NET?
Tags und Links .net reflection vb.net