找到所谓的方法

时间:2012-11-16 15:12:36

标签: c# asp.net webforms

我有一个没有代码的ASPX页面(也就是说,没有.aspx.cs具有相同的名称)。代码是这一行:

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

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

4 个答案:

答案 0 :(得分: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反射工具

答案 1 :(得分:2)

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

答案 2 :(得分:0)

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

您的项目将在某处具有代码,但它可能是另一个库(DLL)的一部分。

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

取决于你的VS设置 F12 可能什么都不做 - 例如我的任何事情都没有。右键单击并选择“转到定义”是最稳定的导航方式 - 在我看来。

答案 3 :(得分:-2)

锅炉,代码仍然存在,您只需选择文件并点击 F7 ,您将看到代码...