Eine andere Möglichkeit ist, Ihren Code zu überprüfen. IMHO, Eigenschaften durch Reflektion zu erhalten, ist nicht die beste Idee. Wenn Sie also Ihren Code umschreiben, werden diese Eigenschaften nicht in statischen Feldern gespeichert, sondern in Dictionary<string, string>
. Hier ist Beispiel:
public static class MyClass
{
public static readonly Dictionary<string, string> Properites = new Dictionary<string, string>();
public string Property1 { get {return Properties["Property1"];} }
public string Property2 { get {return Properties["Property2"];} }
}
Danach können Sie es mit MyClass.Property1
oder MyClass.Properties["Property1"]
aufrufen können.
Sie möchten, dass MyClass.something die Zeichenfolge "val" zurückgibt, oder versuchen Sie, einen Eigenschaftswert anhand des Namens zu erhalten? Die Frage ist ein wenig unklar, könnten Sie ein Verwendungsbeispiel des Codes geben? – sprite
Entschuldigung. Ich habe gerade keinen Code, aber ich beantworte für Ihre Frage, ich möchte einen Eigenschaftswert durch seinen Namen erhalten. – hsz