【发布时间】:2009-01-03 05:31:13
【问题描述】:
typeof(int).Name
将返回 System.Int32 有谁知道返回“int”的方法
【问题讨论】:
标签: c# system.type
typeof(int).Name
将返回 System.Int32 有谁知道返回“int”的方法
【问题讨论】:
标签: c# system.type
没有多少类型是 C# 关键字(int、double、string)...所以也许您可以编写自己的映射函数,从系统类型名称到相应的 C# 关键字。
【讨论】:
【讨论】:
使用反射,您可以使用CSharpCodeProvider(也存在于 .NET Core 2 中)来获取“int”、“string”等,而不是完整的 CLR 类型名称。
还有其他 SO 帖子为此提供了代码示例:
How can I get the primitive name of a type in C#?
C# - Get user-friendly name of simple types through reflection?
或者,您必须自己映射这些类型。如果您不介意第三方库,有一些库可以为您执行此操作。不要忘记可以为空的变体。
【讨论】:
可以使用一个简单的扩展方法来映射到 C# 关键字。代码如下:
【讨论】: