Pracuję nad generowaniem kodu i wpadłem w pułapkę z rodzajami. Oto "uproszczona" wersja tego, co powoduje problemy.Jak uzyskać poprawną definicję tekstu typu ogólnego za pomocą odbicia?
Dictionary<string, DateTime> dictionary = new Dictionary<string, DateTime>();
string text = dictionary.GetType().FullName;
Z powyższego fragmentu kodu wartość text
jest następujący: (. Podziały wierszy dodane dla lepszej czytelności)
System.Collections.Generic.Dictionary`2[[System.String, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.DateTime, mscorlib,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]
Czy istnieje sposób, aby uzyskać nazwę typu (type
) w innym formacie bez analizowania powyższego ciągu? Pragnę następujący wynik dla text
:
System.Collections.Generic.Dictionary<System.String, System.DateTime>
Zauważ, że jeśli usunąć '.FullName' i używać' .ToString() 'Zamiast tego uzyskać" text "' 'System.Collections.Generic.Dictionary'2 [System.String, System.DateTime]' 'który jest bardziej czytelny i bliski temu, co chcesz. –