我有一个 ASPX 页面,后面没有代码(即没有.aspx.cs
同名)。在代码中是这一行:
<div style="overflow: hidden; text-align: center; z-index: 105;">
<%= MainNavBarHTML %><%= SubNavBarHTML %>
</div>
我在程序的其余部分中搜索了MainNavBarHTML
and SubNavBarHTMl
,但找不到对它们的任何引用。我如何找到填充这些元素的内容?
您可能想查看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 反射工具。
在 Visual Studio 中,将光标放在文本上并按下F12以跳转到定义或右键单击文本并选择“转到定义”。
现在将其添加为答案(而不是在评论中)。
您的项目将在某处包含代码,尽管它可能是另一个库 (DLL) 的一部分。
如果您右键单击属性(在本例中为MainNavBarHTML
或SubNavBarHTML
,然后从上下文菜单中选择“转到定义”,VS 将显示代码(如果它在 *.cs 页面中)或加载对象浏览器并导航到该属性,使您可以查看该属性的确切位置。
根据您的 VS 设置,F12可能什么都不做——例如,我什么也不做。在我看来,右键单击并选择“转到定义”是最稳定的导航方式。
锅炉,代码还在,你只需要选择文件并点击F7,你就会看到代码......