我想在asp.net中将其他aspx文件包含到主aspx文件中我可以在jsp中执行它jsp中的代码包括那样
<jsp:include page="footer.jsp" />
答案 0 :(得分:14)
这对我有用。我可以在我想要的任何页面上包含我的菜单:
<div ID="menuContent" runat="server">
<!-- #Include virtual="/menu.aspx" -->
</div>
在我的menu.aspx文件中,我有原始的html和一些C#代码块,ASP将在将内容插入页面后解决这些问题。好吧?
答案 1 :(得分:3)
您无法在asp.net中向现有页面添加其他页面
因为asp.net
在同一页面中不允许两个form tag
有用户控制等功能可以使用
更多细节
http://www.codeproject.com/Articles/1739/User-controls-in-ASP-NET
更多
有Master page
和content page
的概念
这是母版页的良好链接
http://www.codeproject.com/Articles/325865/Creating-Master-Page-In-ASP-NET-2010
母版页具有如下结构
<%@ Master Language="C#" AutoEventWireup="true"
CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</form>
</body>
</html>
几点需要注意
当您创建一个页面时,您只能在ContentPlaceHolder1
中添加内容,其中可能有很多内容。
您也可以将user-control
放在master-page
内,以便它会反映在您的所有页面上。
实际上是用户控件;您可以通过转到主页类的代码隐藏来验证这一点,右键单击类名并选择“转到定义”。你会看到这样的东西:
public class MasterPage : UserControl
{
...
}
便于显示使用单个项目重复的显示组件,例如菜单和面板。问题是,如果需要,它们不会生成.DLL并且必须手动复制到其他项目。
一些很好的链接
ASP.NET equivalent of server side includes
How to include an external html file in asp.net page
答案 2 :(得分:1)
ASP.Net有Master Page和User Control,可以帮助您做类似的事情。
如果您使用的是ASP.Net MVC,我们有部分视图概念。
答案 3 :(得分:0)
使用#include将无效,因为如果包含的文件是ASP.NET页面,它将引入两个页面指令。 OP必须使用Ajax下载文件,然后将其放在页面中。