可以映射代码中的关系与最终的 Visual Studio。当您创建编码映射时,它们在代码编辑器中旁边。这使您可以将精力集中您的任务,因为您可以看到您的代码的地方,在工作时。
代码映射在代码中显示关系并在代码编辑器旁边。 一个绿色箭头显示代码中的光标位置。 在映射中进行批注,如文件。
代码映射在大型基本代码、不熟悉的代码或旧代码有助于避免获取丢失。例如,那么,当您调试时,可能必须查看在许多文件和项目间的代码。代码映射帮助您在代码周围这些部分导航和查看它们之间的关系。您不必确保所有这些代码,日志文件或绘制其他页面关系图。如果必须中断您的工作,代码映射帮助控制如何有关您所使用的代码的内存。
监视活动中的代码映射:与代码映射 (通道 9) 的理解的复杂代码
要求
Visual Studio 这些版本 2012.1 和之一:
最终的 Visual Studio 2012 创建代码从代码编辑器或从解决方案资源管理器。
说明
在使用高质量或主要的人共享映射之前,请确保在所有映射的 project 可见,如隐藏的项目中,展开的组和跨组链接。
高质量的 Visual Studio 2012 或打开代码映射的 Visual Studio 2012 专业版,使有限编辑,并定位代码。
使用 Visual C# .NET 或 Visual Basic .NET 代码的解决方法
了解问题
假定正在处理的绘图程序中有 bug。若要重现 bug,您在最终的 Visual Studio 的解决方案并按 F5 开始调试。
在绘制线条并选择 取消我的最后一个笔画时,则不会执行任何操作,直到可以在下一行。
因此在开始调查通过搜索 Undo 方法。在发现 bug 时在 PaintCanvas 选件类。
启动映射代码
现在您开始映射 undo 方案及其关系。从代码编辑器,可以添加 undo 方法以及对新代码映射的字段。当您创建新映射时,这可能需要一段时间到索引代码。这有助于最新操作的运行速度更快。
![]() |
---|
显示绿添加到映射的最后一项。绿色箭头显示代码中的光标位置。在项目之间的箭头表示不同的关系。通过检查它们的工具提示来获取有关项的更多信息。映射。 |
浏览并检查从映射的代码
为每个字段看到代码定义,双击字段映射或选择字段并按 F12。绿色箭头将在映射的项。您在代码编辑器中光标还会自动移动。
![]() |
---|
可以通过将在代码编辑器中光标还将映射的绿色箭头。 |
了解代码部分之间的关系
现在要了解哪些其他代码与 history 和 paintObjects 字段进行交互。您可以添加对这些字段添加到映射的所有方法。可以执行此操作。映射或从代码。
更改布局重新排列关系流并使映射更容易阅读。可以在映射附近还移动项通过拖动这些元素。
![]() |
---|
默认情况下,增量布局 打开。当添加新的项时,会将尽可能少重新排列映射。若要重新排列整个映射,在添加新项后,请关闭 增量布局。 |
我们检查这些方法。在映射,请双击 PaintCanvas 方法或选择此方法并按 F12。您将了解到此方法创建 history 和 paintObjects,当空列表。
现在请重复相同的步骤检查 clear 方法定义。您将了解到 clear 执行某些任务与 paintObjects 和 history。然后调用 Repaint 方法。
现在请检查 addPaintObject 方法定义。它还执行某些任务与 history 和 paintObjects。它还调用 Repaint。
通过检查映射找到问题
显示修改 history 和 paintObjects 的所有方法调用 Repaint。undo 方法未调用 Repaint,因此,即使 undo 修改同一域。因此您认为通过调用从 undo的 Repaint 解决此问题。
如果没有显示的映射。此缺少调用,查找此问题,特别是的更复杂的代码可能难以。
共享发现和后续步骤
在您或其他人之前修复此 bug,可以在有关问题的映射中进行说明以及如何修复它。
例如,使用颜色,可以将注释添加到映射和标志项目。
如果已安装 Microsoft Outlook 安装,可以对映射以电子邮件的形式发送给其他。还可以导出映射为图像或其他格式。
解决该问题并显示内容。
若要修复此 bug,则添加调用 Repaint 到 undo。
若要确认您的解决,您重新启动调试会话并尝试重现 bug。选中 取消我的最后一个笔画 有效,但当您应确认您进行正确的解决。
可以更新映射显示所做的解决方法。
您的映射现在显示 撤消 和 Repaint之间的链接。
![]() |
---|
当更新映射时,可能会看到添加用于的代码索引创建的消息您的映射更新。这意味着有人更改了代码,使您的映射不匹配当前代码。这将从更新映射不停止,但是,您可能必须重新映射创确认其与代码。 |
现在您执行与您的调查。通过映射代码成功找到并解决问题。还可以帮助您在代码周围导航,确保的映射所博学和步骤显示用于解决该问题。