Я использую отражение для печати сигнатуры метода, например.
foreach (var pi in mi.GetParameters()) {
Console.WriteLine(pi.Name + ": " + pi.ParameterType.ToString());
}
Это работает очень хорошо, но он печатает тип примитивов как "System.String" вместо "string" и "System.Nullable`1 [System.Int32]" вместо "int?". Есть ли способ получить имя параметра, как он выглядит в коде, например.
public Example(string p1, int? p2)
печатает
p1: string
p2: int?
вместо
p1: System.String
p2: System.Nullable`1[System.Int32]