Страницы

Поиск по вопросам

пятница, 9 ноября 2018 г.

Как получить короткое имя типа?

Вызывая код
typeof(int).Name
я получаю "Int32"
А как мне получить короткие имена типов? То есть вместо Int32 - int, Int64 - long и тд. Ручной маппинг не предлагать, это я и сам могу. Просто подумал, может есть более красивое решение.


Ответ

Можно воспользоваться Microsoft.CSharp.CSharpCodeProvider.GetTypeOutput
var compiler = new CSharpCodeProvider();
var type = new CodeTypeReference(typeof(int));
Console.WriteLine(typeof(int).Name); Console.WriteLine(compiler.GetTypeOutput(type));
Output:
Int32 int

Комментариев нет:

Отправить комментарий