3

我有一个 ASPX 页面,后面没有代码(即没有.aspx.cs同名)。在代码中是这一行:

<div style="overflow: hidden; text-align: center; z-index: 105;">
    <%= MainNavBarHTML %><%= SubNavBarHTML %>
</div>

我在程序的其余部分中搜索了MainNavBarHTMLand SubNavBarHTMl,但找不到对它们的任何引用。我如何找到填充这些元素的内容?

4

4 回答 4

5

您可能想查看CodeFile vs CodeBehind问题。

如果您的 ASPX 标记具有CodeFile指令,它将查找关联的.cs文件:

<%@ Page
    Language="C#"
    CodeFile="CustomerDetail.aspx.cs"
    Inherits="SomePage" %>

相反,如果它CodeBehind列出了指令,它将在Bin文件夹中查找已定义类的程序集:

<%@ Page
    Language="C#"
    CodeBehind="CustomerDetail.aspx.cs"
    Inherits="SomePage" %>

这两个指令的命名非常不幸。如果应用程序正在使用CodeBehind(听起来像这样),您可能无法访问源代码并且无法查看这些属性的定义,除非对已编译的程序集使用 .NET 反射工具。

于 2012-11-16T15:17:35.473 回答
2

在 Visual Studio 中,将光标放在文本上并按下F12以跳转到定义或右键单击文本并选择“转到定义”。

于 2012-11-16T15:17:28.017 回答
0

现在将其添加为答案(而不是在评论中)。

您的项目将在某处包含代码,尽管它可能是另一个库 (DLL) 的一部分。

如果您右键单击属性(在本例中为MainNavBarHTMLSubNavBarHTML,然后从上下文菜单中选择“转到定义”,VS 将显示代码(如果它在 *.cs 页面中)或加载对象浏览器并导航到该属性,使您可以查看该属性的确切位置。

根据您的 VS 设置,F12可能什么都不做——例如,我什么也不做。在我看来,右键单击并选择“转到定义”是最稳定的导航方式。

于 2012-11-16T15:48:59.440 回答
-2

锅炉,代码还在,你只需要选择文件并点击F7,你就会看到代码......

于 2012-11-16T15:30:20.453 回答