我从Built-in types table (C# Reference)获得了所有内置类型。 有没有办法以编程方式获取此列表? 我不知道如何使用反射,所以我什至不知道如何开始。我还没有代码。
答案 0 :(得分:2)
使用反射来获取这些类型不是一个好主意。 仅出于学习目的,请使用以下代码段。
获取框架基本类型全名:
var frameworkTypesFullName = typeof(Type).Assembly.GetTypes()
.Where(x => x.IsPrimitive).Select(x => x.FullName).ToList();
获取基本类型的C#别名:
var cs = new CSharpCodeProvider(); //dispose later or put in using statement
var csharpTypesAlias = typeof(Type).Assembly.GetTypes()
.Where(x => x.IsPrimitive).Select(x =>
cs.GetTypeOutput(new CodeTypeReference(x))).ToList();
还有System.String
和System.Object
不是原始的,但在C#中通常以 Simple Types 的形式命名,别名为string
和object
。