能让数据在 两个不同站点之间传递吗? 我现在是想A站点的数据 传递到B站点.......

建议使用Cache 
(1)不太影响程序性能不太可能,你都说了,是大量数据。我举个例子,你是从A.aspx传到B.aspx。那么如果有两个用户都会访问A,那你的数据是否要做到不会影响到不同的客户端?如果是这样的话,那么你存储的地方势必不能用Cache(不是绝对不能用,但是你必须区分客户端,你要做的工作更多),只能用Session, Cookies, ViewState, QueryString, Form等方法。

第二个条件:如果不止一个页面要做这个操作,比如A.aspx和B.aspx都需要传递“大量数据”给C.aspx,那么你如果存在Session里,又不能使之互相覆盖。所以如果是少量数据,比如只是一个数字,那么用ViewState, QueryString, Form都可以,只是他们需要多一趟往返于服务器和客户端。而象你这样大量数据的话,QueryString估计是不能用了。而ViewState其实也是Form。你可以考虑一下实际情况选择具体合用的方法。

(2)使用Server.Transfer方法 
这个才可以说是面象对象开发所使用的方法,其使用Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的,简洁有效。下面这个代码是展示在需要很多个参数的时候,使用的方法,如果参数比较少就没必要使用这个方法了.

如果让所有的查询页面都继承一个接口,在该接口中定义一个方法,该方法的唯一作用就是让结果页面获得构建结果时所需的参数,就可实现多页面共享一个结果页面操作! 
1、先定义一个类,用该类放置所有查询参数

/**//// <summary> 
/// QueryParams 的摘要说明 
/// </summary> 
public class QueryParams 

private string firstName; 
private string lastname; 
private int age; 
public string Firstname 

get { return this.firstname; } 
set { this.firstname = value; } 

public string LastName 

get { return this.lastname; } 
set { this.lastname = value; } 

public string Age 

get { return this.age; } 
set { this.age = value; } 

}

2、接口定义

/**//// <summary > 
/// 定义查询接口。 
/// </summary > 
public interface IQueryParams 

/**//// <summary > 
/// 参数 
/// </summary > 
QueryParams Parameters { get;} 
}

3、查询页面继承IQueryParams接口(QueryPage.aspx)

<form id="form1" runat="server"> 
<div> 
<asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox> 
<asp:TextBox ID="txtLastName" runat="server"></asp:TextBox> 
<asp:TextBox ID="txtAge" runat="server"></asp:TextBox> 
<asp:Button ID="btnEnter" runat="server" Text="Button" OnClick="btnEnter_Click" /></div> 
</form>

QueryPage.aspx.cs

public partial class QueryPage : System.Web.UI.Page, IQueryParams 

private QueryParams queryParams; 
public QueryParams Parameters 

get 

return queryParams; 


public void btnEnter_Click(object sender, System.EventArgs e) 

//赋值 
queryParams = new QueryParams(); 
queryParams.FirstnName = this.txtFirstName.Text; 
queryParams.Lastname = this.txtLastName.Text; 
queryParams.Age = this.txtAge.Text; 
Server.Transfer( "ResultPage.aspx "); 

protected void Page_Load(object sender, EventArgs e) 
{ } 
}

4、接收页面(ResultPage.aspx)

public partial class ResultPage : System.Web.UI.Page 

protected void Page_Load(object sender, EventArgs e) 

QueryParams queryParams = new QueryParams(); 
IQueryParams queryInterface; 
//实现该接口的页面 
if (Context.Handler is IQueryParams) 

queryInterface = (IQueryParams)Context.Handler; 
queryParams = queryInterface.Parameters; 

Response.Write("FirstName: "); 
Response.Write(queryParams.FirstName); 
Response.Write(" <br/ >Lastname: "); 
Response.Write(queryParams.LastName); 
Response.Write(" <br/ >Age: "); 
Response.Write(queryParams.Age); 

}

Asp.net在页面间传递大量数据(数据表)建议采用的方法的更多相关文章

  1. JSP页面间传递参数的5种方法

    JSP页面间传递参数是经常需要使用到的功能,有时还需要多个JSP页面间传递参数.下面介绍一下实现的方法. (1)直接在URL请求后添加 如:< a href="thexuan.jsp? ...

  2. jsp 页面间传递参数

    JSP页面间传递参数是经常需要使用到的功能,有时还需要多个JSP页面间传递参数.下面介绍一下实现的方法. (1)直接在URL请求后添加 如:< a href="thexuan.jsp? ...

  3. StoryBoard学习(5):使用segue页面间传递数据

    StoryBoard学习(5):使用segue页面间传递数据 函数: - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sen ...

  4. 在微信小程序页面间传递数据总结

    在微信小程序页面间传递数据 原文链接:https://www.jianshu.com/p/dae1bac5fc75 在开发微信小程序过程之中,遇到这么一些需要在微信小程序页面之间进行数据的传递的情况, ...

  5. .net中常用的几种页面间传递参数的方法

    转自:http://www.cnblogs.com/lxshanye/archive/2013/04/11/3014207.html 参考:http://www.cnblogs.com/zhangka ...

  6. ios页面间传递参数四种方式

    ios页面间传递参数四种方式 1.使用SharedApplication,定义一个变量来传递. 2.使用文件,或者NSUserdefault来传递 3.通过一个单例的class来传递 4.通过Dele ...

  7. localstroge可以在页面间传递数值;

    连接地址为:http://4.suancai.sinaapp.com/localstorg/a.html 原理是,a页面设置了sessionstorge,b页面可以访问到; 并且已关闭浏览器,sest ...

  8. jsp页面间传递参数 中文乱码问题(zz)

      jsp页面间传递参数 中文乱码问题 1.传递参数 var url = "*****Test.jsp?param1="+encodeURI(encodeURI(str));//对 ...

  9. Java WEB 之页面间传递特殊字符

    本文是学习网络上的文章时的总结以及自己的一点实践.感谢大家无私的分享. 昨天在做项目的时候,有一个页面间传递特殊字符的需求,查了一些资料.如今将自己的经验写出来. 首先.在前台编码 var fckPu ...

随机推荐

  1. 建立DB-LINK和建立视图

    在系统数据通信间经常会有数据库的数据直接引用,使用视图VIEW的方式实现.视图调用通常会有两种情况,一种是同一数据库的视图,一种是跨数据库的视图. 在同一数据库地址不同用户下,不过不同的用户视图调用需 ...

  2. java中遍历Map几种方法

    java中的map遍历有多种方法,从最早的Iterator,到java5支持的foreach,再到java8 Lambda,让我们一起来看下具体的用法以及各自的优缺点. 先初始化一个map: publ ...

  3. Solr6.6 配置中文分词库mmseg4j

    1.准备 首先安装solr:参照搜索引擎Solr-6.6.0搭建,如果版本高于6,可能会不支持,需要改mmseg4j包 mmseg4j包下载: mmseg4j-solr-2.3.0-with-mmse ...

  4. storm安装配置

    1.修改主机名: vim /etc/sysconfig/network NETWORKING=yes HOSTNAME=MASTER 2.修改IP: 先用ifconfig得到ip信息,将其复制 设置i ...

  5. 我的mac OSX bash_profile文件

    A typical install of OS X won't create a .bash_profile for you. When you want to run functions from ...

  6. HTML5 Canvas 绘制库存变化折线

    <!DOCTYPE html> <html lang="utf-8"> <meta http-equiv="Content-Type&quo ...

  7. Rails时间扩展方法

    1.时间扩展方法: beginning_of_day,end_of_day等等 Time.now.end_of_day 2.ruby类型判断 is_a?(类型) 如:b.is_a?(Array)

  8. mui 跨域请求

    <ul class="mui-table-view" style="margin-top: 25px;"> <li class="m ...

  9. Odoo8模块中增加延时自动消失的提示

    在odoo中,如果必要栏位没有值,在保存时右上角会有如下图的提示,该提示会延时并自动关闭. 有网友问如何在自己的模块中增加这样的提示,以方便用户在操作时,能提示一些必要的信息.下面例出大致的步骤以供参 ...

  10. AspectJ 是什么

    http://www.blogjava.net/hwpok/archive/2008/06/28/211312.html 1. 序 Aspect Oriented Programming (AOP)是 ...