ASP.NET中页面传值的几种方法

1、表单投递 (由PrepriousPage 进行访问);

2、<A href="target.aspx?param1=1111&param2=2222">链接地址传送</A>
接收页面: string str = Request["param1"]
  
3、Session共享
发送页面:Session["param1"] = "1111";  
按收页面  string str = Session["param1"].ToString();  
  
4、Application共享
发送页面: Application["param1"] = "1111";   
按收页面: string str = Application["param1"].ToString();  
此种方法不常使用,因为Application在一个应用程序域范围共享,所有用户可以改变及设置其值,故只应用计数器等需要全局变量的地方。

6、Response.Redirect()方式
   Response.Redirect("target.aspx?param1=1111&param2=2222")
   接收页面: string str = Request["param1"]
  
7、Server.Transfer()方式
   Server.Transfer("target.aspx?param1=1111&param2=2222")
   接收页面: string str = Request["param1"]

      使用7的二个方法:

           1)、在发起页中定义公有属性如,StartDate和EndDate,然后使用 Server.Transfer("ResultPage.aspx"); 在结果页中使用 QueryPage queryPage = ( QueryPage )Context.Handler;

           2)、同第一种,只是重构一下。即让所有的查询页面都继承一个接口,在该接口中定义一个方法,该方法的唯一作用就是让结果页面获得构建结果时所需的参数,就可实现多页面共享一个结果页面操作!在结果页中可以这样写:

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


你可能感兴趣的:(ASP.NET中页面传值的几种方法)