我正在尝试使用Dxcore打开Api来编写一个简单的控制台应用程序作为学习者。我使用以下代码行解析了一个C#文件。
LanguageElement parsedFile = parser.ParseFile(fileLocation)
我想在这个文件上尝试一些基本的东西。所以我试图获取此文件及其参数中的所有方法并将它们放在列表中。
我看到了一个可以做到这一点但却无法使用它的属性。
DevExpress.CodeRush.StructuralParser.TypeDeclaration.AllMethods
Dxcore插件开发文档中的链接也很少有用。
先谢谢。
答案 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 。