【发布时间】:2016-05-23 05:34:12
【问题描述】:
我在 asp.net 页面中有许多 #include 指令,用于在页面之间共享页面 sn-ps(例如页眉、页脚、链接)。在某些情况下,我在包含文件中也有一些 asp.net 代码。它在浏览器/应用程序中运行良好,我从来没有遇到过问题,但是,每当我尝试在 Visual Studio 中构建项目时,它都会显示为错误,我永远无法构建。
错误的原因很明显。由于该包含文件没有 ASP.NET 声明等... VS 认为该页面不应该有 asp.net 代码,找不到关联的类、对象或其他任何东西
我该如何解决这个问题?
顺便说一句...我是老派,从“asp”时代开始,所以我仍然使用包含,但如果有人知道我应该这样做的更当前/官方的方式,我很想听听.
例子:
'Main Page
<%@ Page Language="VB" Debug="false" Etc... %>
<script runat="server">
Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
response.write("hello")
End Sub
</script>
<html><head></head>
<body>
<div id='header'>
<!--#include file="myincludefile.aspx"-->
</div>
<div id='content'>
blah, blah, blah...
</div>
</body>
</html>
'Include file: myincludefile.aspx
<div>
<asp:Button runat="server" ID="Button1" Text="click me" OnClick="Button1_Click" />
</div>
【问题讨论】:
-
看看用户控件——应该正是你想要的。只需创建一个新的用户控件 (ascx) 并将其添加到您想要的页面。
-
嗯。我已经将用户控件用于其他事情,但从未考虑过我的整个页眉、页脚和导航。我想这当然是可能的,但这是标准方法吗?与我不太喜欢使用的母版页相比
-
是的,非常好。这确实是在母版页出现之前唯一合理的方法 - 用户控件与任何其他页面一样是页面的一部分,具有自己的所有状态、事件和一切。
-
优秀。感谢您的帮助!
标签: asp.net vb.net visual-studio