Ich spiele mit der dynamischen Codegenerierung in C#, basierend auf einigen Schnittstellen, die ich habe. Eines der Dinge, die ich tun muss, ist, den in der Schnittstelleneigenschaft bereitgestellten Typ mit dem generierten Code abzugleichen. Ich muss nicht wirklich Entscheidungen darüber treffen, sondern nur eine Eins-zu-Eins-Zuordnung vornehmen.
Ich kompiliere aus Text, nicht aus AST, daher muss ich den richtigen C#-Code bereitstellen als Eingabe. Und hier beginnt das Problem: Während einige Type-Instanzen gut konvertiert werden können, verfügen andere über interne String-Darstellungen, wie z. B. System.Collections.Generic.List`1[System.String] anstelle von List (oder System.Collections.Generic.List). Das Gleiche gilt für int?, der zu System.Nullable`1[System.Int32] geht
Ich kann eine Übersetzungsklasse schreiben, die Generika und Nullables mit 1 und 2 Argumenten abdeckt Insbesondere, aber ich frage mich, ob es möglicherweise bereits eine gebrauchsfertige Methode für eine solche Konvertierung gibt, entweder in der Kernbibliothek oder in einer Open-Source-Bibliothek?
So konvertieren Sie einen Typ in einen C#-analysierbaren String ⇐ C#
-
- Similar Topics
- Replies
- Views
- Last post