IT猫扑网:您身边最放心的安全下载站! 最新更新|软件分类|软件专题|手机版|论坛转贴|软件发布

您当前所在位置: 首页网络编程.Net编程 → Asp.net页面之间传“大量的参数”

Asp.net页面之间传“大量的参数”

时间:2015-06-28 00:00:00 来源:IT猫扑网 作者:网管联盟 我要评论(1)

  除了常用的Get,Post,Session,Application等页面间可传递参数的方法,还有新的方法,这应该是Asp.net独有的吧

  B页面取A页面的值

  页面A代码

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

  {

  protected void Page_Load(object sender, EventArgs e)

  {

  }

  public string F

  {

  get { return this.TextBox1.Text.ToString(); }

  set { this.TextBox1.Text = value; }

  }

  public string M

  {

  get { return this.TextBox2.Text.ToString(); }

  set { this.TextBox2.Text = value; }

  }

  protected void Button1_Click(object sender, EventArgs e)

  {

  Server.Transfer("Default2.aspx");

  // 注意下,地址栏没变

  //用Response.Redirect不行……

  //Response.Redirect("Default2.aspx");

  //这的解释http://topic.csdn.net/t/20051227/21/4484983.html

  }

  }

  页面B的代码

  Code

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

  {

  protected void Page_Load(object sender, EventArgs e)

  {

  Default s;

  if (Context.Handler is Default)

  {

  s = (Default)Context.Handler;

  Label1.Text = s.F + "---"+ s.M;

  }

  }

  }

  应该注意到,页面Default.aspx.cs本身就是一个类,这样的话可以在页面二中直接使用这个类,将页面一需要传递的参数

  封装一下,供外界访问

  一个页面接受多个页面传递的参数,对结果统一处理

  1.新建参数类及接

  /**////

  ///QueryParams 的摘要说明

  ///

  public class QueryParams

  {

  private string staDate;

  private string endDate;

  /**////

  /// 开始时间

  ///

  public string StaDate

  {

  get { return this.staDate; }

  set { this.staDate = value; }

  }

  /**////

  /// 结束时间

  ///

  public string EndDate

  {

  get { return this.endDate; }

  set { this.endDate = value; }

  }

  }

  /**////

  /// 定义查询接口。

  ///

  public interface IQueryParams

  {

  /**////

  /// 参数

  ///

  QueryParams Parameters{get;}

  }

#p#副标题#e#

  2.多个页面中要继承该接口

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

  {

  private QueryParams param;

  public QueryParams Parameters

  {

  get

  {

  return param;

  }

  }

  protected void Page_Load(object sender, EventArgs e)

  {

  }

  protected void Button1_Click(object sender, EventArgs e)

  {

  param = new QueryParams();

  param.StaDate = this.TextBox1.Text.ToString();

  param.EndDate = this.TextBox2.Text.ToString();

  Server.Transfer("Default4.aspx");

  }

  }

  3.别的页面同样处理

  4.统一处理页面

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

  {

  protected void Page_Load(object sender, EventArgs e)

  {

  QueryParams queryParams = new QueryParams();

  IQueryParams queryInterface;

  //实现该接口的页面

  //与Default2.asp相比,主要是Context.Handler的类型不同

  if (Context.Handler is IQueryParams)

  {

  queryInterface = (IQueryParams)Context.Handler;

  queryParams = queryInterface.Parameters;

  }

  Label1.Text = "StaDate:" + queryParams.StaDate + "
EndDate:" + queryParams.EndDate;

  }

  }

  注意下"Response.Redirect(url)和Server.Transfer(url)的用法"是不同的……

  还有"Context.Handler"

关键词标签:Asp.net

相关阅读

文章评论
发表评论

热门文章 诛仙3飞升任务怎么做-诛仙3飞升任务流程最新2022 诛仙3飞升任务怎么做-诛仙3飞升任务流程最新2022 钟离圣遗物推荐-原神钟离圣遗物词条 钟离圣遗物推荐-原神钟离圣遗物词条 解决方法:应用程序“DEFAULT WEB SITE”中的服务器错误 解决方法:应用程序“DEFAULT WEB SITE”中的服务器错误 使用aspnet_regiis.exe 重新注册.NET Framework 使用aspnet_regiis.exe 重新注册.NET Framework

相关下载

    人气排行 诛仙3飞升任务怎么做-诛仙3飞升任务流程最新2022 asp.net表单提交方法GET\POST 在ASP.NET中如何判断用户IE浏览器的版本 Asp.net中messagebox的实现方法 Asp.net中的web.config配置 在ASP.NET MVC中实现大文件异步上传 asp.net获取URL和IP地址 FileUpload上传多文件出现错误的解决方法