有关我的应用程序想要通过一个组件来解析,并提取每一个方法和存储方法,在我的对象中的一个的源代码的名称(我在代码中定义的)。

我应该从哪里开始实施的?

Edit:从问题和意见,我一看,原来是不那么容易,从组件获取源代码。然后,我应该在哪里开始,如果我想从不在我目前的解决方案(视觉工作室)?

源代码文件的源代码
有帮助吗?

解决方案

的组件的不包含的源代码。你也许能够提取的IL,但没有像反射器或反汇编,是不是特别有用的工具。

要获得的方法名称,只是这样的:

    var assembly = Assembly.GetExecutingAssembly();
    var names = (from type in assembly.GetTypes()
                 from method in type.GetMethods(
                   BindingFlags.Public | BindingFlags.NonPublic |
                   BindingFlags.Instance | BindingFlags.Static)
                 select type.FullName + ":" + method.Name).Distinct().ToList();

其他提示

要获得这个调试信息,请使用通用编译器基础设施:元数据API 项目

此可以读取的.pdb文件(包含象源文件和行号的调试信息中的文件)。

首先,你需要找到所有类型。

请参阅这里做到这一点。

然后你可以根据需要找到所有各类型的方法。

请参阅这里做到这一点。

如果你需要一个例子来整合所有让我知道。

我不知道如何获得源代码,但如果你想获取有关方法的信息,你应该使用反射。

MethodInfo[] methodInfos = typeof(MyClass).GetMethods(BindingFlags.Public |
                                                  BindingFlags.Static);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top