使用体系结构资源管理器查找代码

在最终的Visual Studio,则可以使用体系结构资源管理器来帮助浏览和查找在visual C# .NET,Visual Basic .NET和Visual C++项目和生成代码的源代码(如程序集文件、可执行文件和二进制文件。 还可以创建从体系结构资源管理器的依赖项关系图。 请参见 在依赖项关系图上可视化代码依赖项

主题内容

  • 表示体系结构资源管理器

  • 查找 Visual Studio 解决方案中的源代码。

  • 查找托管程序集或可执行文件的中的已编译代码。

  • 缩小浏览结果的范围。

  • 刷新浏览结果。

表示体系结构资源管理器

打开体系结构资源管理器

  • 在**“体系结构”菜单上,指向“窗口”,然后单击“体系结构资源管理器”**。

    若要调整体系结构资源管理器的大小,请将窗口的顶部拖到所需的高度。 若要移动体系结构资源管理器,将其标题栏或选项卡,为所需的位置。

    提示

    如果任何窗口(例如“错误列表”窗口或“输出”窗口)显示在体系结构资源管理器的上方,请移动这些窗口,使它们不会妨碍您调整体系结构资源管理器的大小。

体系结构资源管理器中的顶级域

体系结构资源管理器:域、视图、节点、节点类型和链接类型

体系结构资源管理器将结构表示为节点,并将关系表示为链接。 在您浏览时,体系结构资源管理器将节点显示在连续的列中。 第一列显示您可浏览的域和视图。 在您选择某个域和视图时,体系结构资源管理器将显示该视图中的可用节点。

当您在中选择列中的节点时,体系结构资源管理器中的下一列将显示您逻辑与当前选择相关的节点。 例如,如果选择命名空间,您将在下一列中看到类型。 如果选择类型,您将在下一列中看到成员。 折叠的操作列(显示在节点列的右侧)标识下一列所包含节点的默认类型或关系。 通过展开操作列并选择节点或链接的特定类型,您可以筛选下一列的结果。

提示

在移到它上面时,的指针操作列中显示。

查找 Visual Studio 解决方案中的源代码

在体系结构资源管理器可以使用 *** 选件类视图 ****** 解决方案视图 *** 浏览源代码滚动到表达式的级别。

  • **“类视图”**显示 Visual Studio 解决方案的逻辑视图。 例如,您可以按命名空间、类、成员等进行浏览。

    体系结构资源管理器中的类视图

  • **“解决方案视图”**显示 Visual Studio 解决方案的物理视图。 例如,您可以按项目、项目文件等进行浏览。

    体系结构资源管理器中的解决方案视图

查找解决方案中的代码

  1. 在**“解决方案资源管理器”的第一列中,在“Visual Studio <解决方案名称>”下,单击“类视图”“解决方案视图”**。

    一个节点列将出现在第一列的右边。 此列显示所选视图中可用的所有节点。 例如,如果选择了**“类视图”**,您将看到以逻辑方式存在于解决方案中的所有命名空间。

  2. 在节点列中,选择一个或多个节点以查看相关节点的下一列。 若要选中当前列中的所有节点,请按 Ctrl+A

  3. 重复步骤 2,直到找到所需节点。

    提示

    若要重新开始查询通过清除列,在 *** 体系结构资源管理器 *** 工具栏,单击 *** 清除的列 ***“清除列”按钮

在程序集中找到,可执行文件或二进制文件的生成代码

*** 体系结构资源管理器 *** 的使用 *** 选择文件 *** 浏览托管程序集滚动到方法对方法的调用级别。

  1. 在**“体系结构”菜单上,指向“窗口”,然后单击“体系结构资源管理器”**。

  2. 在第一列中的**“文件系统”下,单击“选择文件”**。

  3. 打开 对话框中,浏览到程序集或二进制文件,选择这些文件,然后单击 打开

    一个节点列将出现并显示所选的文件。

  4. 在该节点列中,选择一个或多个文件。

    另一个节点列将出现并显示所选文件中的所有节点。

  5. 选择一个或多个节点以查看相关节点的下一列。 若要选中当前列中的所有节点,请按 Ctrl+A

  6. 重复步骤4和步骤5,直到找到所需节点。

缩小浏览结果的范围

可通过以下方式缩小浏览会话结果的范围:

  • 按名称筛选当前列中的节点。

  • 按节点类型或属性筛选当前列中的节点。

  • 按节点类型筛选下一列中的节点。

  • 按链接类型筛选下一列中的节点。

  • 按容器或属性值对节点进行分组

Dd409431.collapse_all(zh-cn,VS.110).gif按名称筛选当前列中的节点

按名称筛选当前列

  1. 在**“体系结构资源管理器”**中的节点列顶部,单击阴影区域以显示筛选框。

  2. 键入名称,然后按 Enter

    当前列将仅显示匹配节点。 该列的右下角将显示一个水印,表示该列已筛选。

Dd409431.collapse_all(zh-cn,VS.110).gif按节点类型或属性筛选当前列中的节点

按类别或属性筛选当前列

  1. 在**“体系结构资源管理器”**中的节点列顶部,单击阴影区域以显示筛选框。

  2. 在筛选框的左边,单击**“按类别或属性筛选当前列中的项”**按钮。

  3. 若要仅显示特定类型的节点,请在**“类别”**下单击所需的类型。

  4. 若要仅显示具有特定属性的节点,请在**“属性”**下单击所需的属性。

  5. 完成上述操作后,单击**“确定”**。

    当前列将仅显示匹配节点。 该列的右下角将显示一个水印,表示该列已筛选。

Dd409431.collapse_all(zh-cn,VS.110).gif按节点类型筛选下一列中的节点

  1. 在**“体系结构资源管理器”**中,浏览到位于所需查看节点之前的节点列,然后选择所需的节点。

  2. 在节点列的右侧,单击折叠的操作列将它展开。

    提示

    在移到它上面时,的指针操作列中显示。

  3. 在操作列中的**“节点导航”**下,选择您要查看进一步信息的特定类型的节点。 若要查看这些类型的联合,请选择多种类型。

    一个节点列将出现并显示任何匹配节点。

    备注

    在浏览.NET代码时,可能会看到仅适用于C和C++代码的以下类型,并且不会显示结果,如果选择它们: Unions、Typedefs和 Members。

Dd409431.collapse_all(zh-cn,VS.110).gif按链接类型筛选下一列中的节点

体系结构资源管理器将用于筛选下一组节点的链接类型分为两种类别:入站或出站。 这些类别描述链接相对于当前所选节点的方向。 出站链接从当前所选节点指向下一个相关节点。 入站链接从前一个相关节点指向当前所选节点。 当您选择出站链接类型时,体系结构资源管理器将显示下一级别的相关节点。 当您选择入站链接类型时,体系结构资源管理器将显示上一级别的相关节点。

例如,如果选择类节点,并且选择出站**“包含”链接类型,则体系结构资源管理器将显示该类节点包含的节点。 如果为该类节点选择入站“包含者”**链接类型,您将看到包含该类的节点,例如命名空间、类文件和项目。

  1. 在**“体系结构资源管理器”**中,浏览到位于所需查看节点之前的节点列,然后选择所需的节点。

  2. 在节点列的右侧,单击折叠的操作列将它展开。

    备注

    将指针移到“操作”列上时,该列会突出显示。

  3. 在操作列中,选择下列选项之一:

    • 若要查看下一级别的相关节点,请在**“出站导航”**下选择所需的链接类型。

    • 若要查看上一级别的相关节点,请在**“入站导航”**下选择所需的链接类型。

      备注

      若要查看这些类型的联合,请选择多种类型。

    下一列将出现并显示任何匹配节点。

Dd409431.collapse_all(zh-cn,VS.110).gif按容器或属性值对节点进行分组

在体系结构资源管理器中,您可以基于节点的现有包容关系或它们的属性来创建节点组。 如果可进行分组,则在您完成此任务时将出现新组节点的列表。

在体系结构资源管理器中通过这些组创建关系图时,可以使用**“全部显示为组”**命令将链接的节点组织为组。 有关更多信息,请参见下列主题:

也可以使用组来组织现有关系图上的节点。 有关更多信息,请参见编辑和自定义依赖项关系图

  1. 在**“体系结构资源管理器”**中,浏览到包含要分组的节点的节点列。 若要选择该列中的所有项,请按 Ctrl+A

  2. 在节点列的右侧,单击折叠的操作列将它展开。

    备注

    将指针移到“操作”列上时,该列会突出显示。

  3. 在操作列中的**“分组”**下:

    单击

    那么…

    “按容器分组”以查看任何可用的组

    • 若要查看这些组中的节点,请选择一些组。

      下一列将显示所选组中的节点。

    “按属性分组”以查看任何可用的属性

    1. 选择要用作组的属性。

      下一列将显示按属性值组织的组。

    2. 若要查看具有特定属性值的节点,请选择一些属性值组。

    您看到的组的数量和种类取决于属性值的类型:

    • 布尔值:True 和 False

    • 整数值:将值的范围划分为四等分的四个组。

    • 字符串值:将为每个唯一的字符串值显示一个组,并且节点将基于其特定属性值归属于每个组。

      当所选属性在多个节点之间具有相同的字符串值时,这一点最为有用。 例如,如果选择对于每个节点都具有一个唯一字符串值的属性,则每个节点都将有一个组。

刷新浏览结果

必须手动刷新体系结构资源管理器以显示对代码或解决方案所做的任何更改。

刷新体系结构资源管理器

  1. 在**“体系结构资源管理器”**中,浏览到位于要刷新的列前面的节点列。

  2. 在当前列中,选择与更新的节点相关的节点。

    另一个节点列将出现,以显示刷新的节点列表。

请参见

概念

在依赖项关系图上可视化代码依赖项

可视化和了解代码