asp.net怎么在一个文件(a.aspx)中引用另一个文件(b.aspx)

如题所述

"引用"有好几种情况:
1.在浏览器里让人同时看到两个页面,a.aspx是b.aspx的父页,那就要用<iframe>,在a.aspx里要显示b.aspx的地方摆上<iframe frameborder="0" style="width: 100%; height: 100%" src="b.aspx"></iframe>
2.a.aspx需要用b.aspx的执行结果,但是页面不跳转,对用户来说就像访问的就是a.aspx(浏览器的地址栏里显示的是a.aspx),比如把b.aspx做为模板,返回的html放在a.aspx的textarea里面显示它返回的html代码,这种情况比较复杂一点:
StringWriter writer = new StringWriter();
Server.Execute("b.aspx", writer);
String html = writer.ToString() ;
这时候的html就是b.aspx执行后返回的html代码。你可以把这段代码插在a.aspx的任意一个地方。Execute的第一个参数是地址,b.aspx后面可以跟querystring。
3.页面需要跳转,那就用 Response.Redirect("b.aspx"); 这样用户看到的是b.aspx(浏览器的地址栏里显示的是b.aspx)
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-04-07

如果 a.aspx 中的方法 b.aspx也能用上,而且这种方法还很多,那么是需要分出一个业务类来实现的。
意思是说 专门写一个类,然后在 a.aspx 和 b.aspx 中调用。
这里可以实现 静态方法。但是由于 a.aspx b.aspx 有可能有不同的客户端访问,可能不安全。但是方法只是一个查询方法的话 就可用静态方法,而且节省空间,速度也快。

举个例子:
比如 a.aspx中有一个datagird 里面的数据是从数据库中得来的,结果你在该页面的基类中实现了 数据库的连接,数据的呈现,这样是可以的。
但是你发现 b.aspx中也有datagird 也要显示相同的数据(或者不同,只是 sql 语句的变化)那么你就很想调用 a.aspx重的方法也以达到重用的目的。

这里就 十分的需要一个 类了
来实现 数据库的连接 数据集合的返回。如果没有数据的操作的话,建议将这个类重的方法做成静态的,返回类型可以是 datatable dataset等。
这样在 a.aspx b.aspx中调用就可实现数据的呈现。

如果要数据操作的话 ,可以将这个类中的数据操作方法 做成线程安全的。

为什么要这么做,是因为 同一条数据 我可能正在查询,而另一个客户端正在修改,或者删除,这样就导致了你看的数据有可能在数据库中已经年过改变或者不存在。

建议学习 mvc 模式!
就到此处吧
第2个回答  2011-04-19
你可以做一个跳转:比如but控件,在他的事件里给上一句Response.Redirect("b.aspx"); 就行了
第3个回答  2011-04-06
设置IFRAME,别忘了把IRAME边框设置为0,同时注意B.ASPX中如果META设置是否允许你引用!
第4个回答  2011-04-06
你指的引用是像asp中的include file这种的吗?
include file在.net是没有的。但是你可以使用用户控件和母版来实现公共界面的设计;在app_code目录中建类就可以实现全局的函数以供调用。

asp.net怎么在一个文件(a.aspx)中引用另一个文件(b.aspx)
1.在浏览器里让人同时看到两个页面,a.aspx是b.aspx的父页,那就要用<iframe>,在a.aspx里要显示b.aspx的地方摆上<iframe frameborder="0" style="width: 100%; height: 100%" src="b.aspx"><\/iframe>2.a.aspx需要用b.aspx的执行结果,但是页面不跳转,对用户来说就像访问的就是a.aspx(浏览器的地址栏...

asp.net中的一个文件夹中的.aspx页面如何访问另一个文件夹下的.aspx页...
比如文件夹A和文件夹B都在根目录下,里面分别有“A里的页面”和“B里的页面”,则想要在“A里的页面”里面引用“B里的页面”,就要这样用:Response.redriect("..\/B\/B里的页面.aspx")括号里双引号里面的开始的两个“点”表示返回到上一级文件夹,后面紧跟的“\/B”表示进入B文件夹,在后面的...

asp.net 如何 include 其他文件
第三种方法:在项目中加一个类库,把通用的函数放进去.然后再网站上引用.

Asp.net中一个页面如何继承另外一个页面?
而b.aspx,我不需要相对应的cs文件,同样把顶部page改成 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="a.aspx.cs" Inherits="Page_A" %> 两个aspx共用一个aspx.cs文件。

asp.net中关闭一页面 同时触发另一面的刷新办法?
比如A.aspx打开了b.aspx页面,则当你关闭b.aspx的时候调用一下a.aspx页面的一个按钮,当然,你要在a.aspx放一个按钮,这个按钮的事件里面重新调用一下此页面的加载事件。注:如果你用的是window.showmodaldialog()方法打开b.aspx页面的话,注意获取a.aspx页面的按钮的时候用window.dialogArguments....

asp.net如何给单页面aspx添加独立的cs代码文件
添加的方法比较繁琐,你看default.aspx这个页面的代码的最上边部分是不是有一句话?里边有一个属性的值是“default.aspx.cs”。修改成你想要的那个cs文件的名字就可以。或者最直接的方式,新建一个baidu.aspx把当前的这个文件的代码拷贝进去!

ascx是被aspx调用的,如何在aspx中调用ascx中的变量 ASP.NET_百度...
回答:form1 ctrlHeader = this.Page.FindControl( "ctrlHeader ");

如何将一个aspx页面嵌入另一个aspx页面?
将一个aspx页面嵌入另一个aspx页面的方法:1、在a页面中使用<iframe width="宽" height="高" src="b.aspx" scolling="no"><\/iframe>。2、把b页制作成用户控件。ASP.NET是由微软在·NET Framework框架中所提供,开发Web应用程序的类库,封装在System.Web.dll文件中,显露出System.Web命名空间,并...

ASP.NET页面间数据传递的几种方法
1、ASP.NET页面间数据传递的各种方法和分析1.1 使用Querystring 方法QueryString 也叫查询字符串, 这种方法将要传递的数据附加在网页地址(URL)后面进行传递。如页面A.aspx 跳转到页面B.aspx,可以用Request.Redirect("B.aspx?参数名称=参数值")方法,也可以用超链接:,页面跳转后,在目标页面中可用Ru...

ASP.NET中怎么调用创建的另一个文件夹下的自定义的命名空间
所谓命名空间,其实就是一个解决方案(项目),创建一个解决方案(项目),把内容写好---编译---然后在web项目中就可以引用了,添加引用---项目---选择你弄好了的解决方案(项目),会生成一个bin文件夹,里面就是你编译后的项目文件,引用好之后,你在123.aspx.cs中就可以引用这个项目(命名空间)了,...

相似回答