如何获取类中的所有方法并存储在文件中使用DXCore?

时间:2011-04-14 11:02:41

标签: coderush dxcore

我正在尝试使用Dxcore打开Api来编写一个简单的控制台应用程序作为学习者。我使用以下代码行解析了一个C#文件。

   LanguageElement   parsedFile = parser.ParseFile(fileLocation)  

我想在这个文件上尝试一些基本的东西。所以我试图获取此文件及其参数中的所有方法并将它们放在列表中。

我看到了一个可以做到这一点但却无法使用它的属性。

  DevExpress.CodeRush.StructuralParser.TypeDeclaration.AllMethods

Dxcore插件开发文档中的链接也很少有用。

先谢谢。

2 个答案:

答案 0 :(得分:4)

您可以将“parserFile”引用转换为SourceFile类型实例,然后使用如下代码:

  SourceFile parsedFile = parser.ParseFile(fileLocation) as SourceFile;
  if (parsedFile != null)
    foreach (TypeDeclaration type in parsedFile.AllTypes)
      foreach (Method method in type.AllMethods)
        foreach (Param param in method.Parameters)
        {
          // Do something...
        }

此链接可能有点帮助:How to enumerate solution and source code items using DXCore

答案 1 :(得分:2)

我相信您正在寻找以下代码。

SourceFile parsedFile = CodeRush.Language.Parse(fileName);
foreach (TypeDeclaration type in parsedFile.AllTypes)
{
    foreach (Method method in type.AllMethods)
    {
        // do stuff
    }
}

请注意从 LanguageElement 更改为 SourceFile