Tl; DR;
Was ist die Regex, um C# -Klassen zu finden, die nur eine einzige String-Eigenschaft besitzen? (Keine Verfahren oder andere Eigenschaften)Klassen mit einer einzigen Eigenschaft finden
Long Story:
ich jetzt führende Tech leitet ein Team, das mehrere Lösungen erhalten. Wenn ich mich umsehe, habe ich viele Fälle von Dictionary<string, SpecialValue>
herausgefunden, wobei SpecialValue
eine Klasse ist, die eine einzige öffentliche String-Eigenschaft namens "value" enthält.
Das Idea hier ist, dass die resultierende Json wie {"dictionaryKey":{value:"myValue"}}
sein.
Ich möchte herausfinden, wie viele Fälle wir so haben.
Visual Studio kann Regex-Suche verwenden, also ... Was ist die Regex zum Suchen einer Klasse, die eine einzelne String-Eigenschaft hat?
Laufzeit? Ich denke, was Sie brauchen, ist Reflection und nicht Regex – user3185569
nein, es ist nicht auf Laufzeit ... es ist auf Kompilierzeit – Leonardo
Holen Sie sich den Typ mit 'instance.GetType()' oder 'typeof (type)' und dann auf Null-Methoden mit 'type.GetMethods(). Length == 0' und nur eine String-Eigenschaft mit' type.GetProperties(). Length == 1 && type.GetProperties() [0] .PropertyType == typeof (string) '. Sie können ein Einheitentestprojekt für das Kompilierungsszenario ausführen, das für Ihr Projekt ausgeführt wird. – mishamosher