我正在使用 C# windows 窗体实现语法荧光笔,并想获取所有名称的列表,我知道这应该手动完成,添加关键字和名称,但我想知道 C# 中是否有可以帮助我的函数做这个。
问问题
3255 次
4 回答
4
使用反射。
Assembly.GetAssembly(typeof(MyClass)).GetTypes()
于 2012-06-06T08:05:31.203 回答
3
您将不得不使用反射来获取 dll 中类的名称。
// Using Reflection to get information from an Assembly:
System.Reflection.Assembly o = System.Reflection.Assembly.Load("mscorlib.dll");
var types = o.GetTypes();
于 2012-06-06T07:57:59.733 回答
2
Assembly asm = Assembly.GetExecutingAssembly();
List<string> namespaceList = new List<string>();
List<string> returnList = new List<string>();
foreach (Type type in asm.GetTypes())
{
if (type.Namespace == nameSpace)
namespaceList.Add(type.Name);
}
foreach (String className in namespaceList)
returnList.Add(className);
return returnList;
于 2012-06-06T09:53:52.930 回答
1
您可以使用反射获取 C#.NET 中所有程序集的列表。
例子 :
Assembly mscorlib = typeof(string).Assembly;
foreach (Type type in mscorlib.GetTypes())
{
Console.WriteLine(type.FullName);
}
于 2012-06-06T08:03:19.057 回答