需要完成的功能:几个查询页面,一个显示查询结果的页面。页面之间传递sql语句。
不想用Session和cookies传递,想用Server.Transfer。
不知道怎么实现,网上看了些例子,都是1:1的,我现在是n:1,那怎么实现?
如果查询页面传过来的参数为空,则查询结果页面默认给一句sql语句。在线等。
不想用Session和cookies传递,想用Server.Transfer。
不知道怎么实现,网上看了些例子,都是1:1的,我现在是n:1,那怎么实现?
如果查询页面传过来的参数为空,则查询结果页面默认给一句sql语句。在线等。
----------------------------------
注意:A的TextBox改为public
public class A : System.Web.UI.Page
{
public System.Web.UI.WebControls.TextBox TextBox1;
protected System.Web.UI.WebControls.Button Button1;
// 自动生成代码省略... private void Button1_Click(object sender, System.EventArgs e)
{
Server.Transfer("B.aspx");
}
} public class B : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox TextBox1;
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
A a = (A)this.Context.Handler;
this.TextBox1.Text = a.TextBox1.Text;
}
}
// 自动生成代码省略...
}
不想用QueryString
比如我有查询页面a,b,c。查询结果页面d.
a,b,c页面如
public class A : System.Web.UI.Page
{
public System.Web.UI.WebControls.TextBox TextBox1;
protected System.Web.UI.WebControls.Button Button1;
// 自动生成代码省略... private void Button1_Click(object sender, System.EventArgs e)
{
Server.Transfer("B.aspx");
}
}
那么d 页面怎么写呢?
public class B : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox TextBox1;
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
A a = (A)this.Context.Handler;
this.TextBox1.Text = a.TextBox1.Text;
B b = (B)this.Context.Handler;
//..............
C c = (C)this.Context.Handler;
//..............
///////////////////这么写也太麻烦了,有没有简单的方法??/////////////
}
}
// 自动生成代码省略...
}
{
protected System.Web.UI.WebControls.TextBox TextBox1;
protected System.Web.UI.WebControls.Button Button1;
// 自动生成代码省略... private void Button1_Click(object sender, System.EventArgs e)
{
Server.Transfer("B.aspx");
}
}public class B : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox TextBox1;
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
string str = (string)this.Request["TextBox1"];
}
}
// 自动生成代码省略...
}
/////这个Request["TextBox1"]哪里来的呢???