3

C# Windows フォームを使用して構文ハイライターを実装しており、すべての名前のリストを取得したいと考えています。キーワードと名前を追加して手動で行う必要があることはわかっていますが、C# に役立つ関数があるかどうか疑問に思っていましたこれを行う。

4

4 に答える 4

4

反射を使用します。

Assembly.GetAssembly(typeof(MyClass)).GetTypes()
于 2012-06-06T08:05:31.203 に答える
3

You will have to use the reflection to get the names of classes in a 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 に答える