C#页面间传值问题:如何在跳转时为指向页面的属性赋值?

我为a.aspx页面定义了几个属性,如////////////////////////////////////////string_id;string_name;publ... 我为a.aspx页面定义了几个属性,如
////////////////////////////////////////
string _id;
string _name;

public string Id
{
get { return _id; }
set { _id = value; }
}
public string Name
{
get { return _name; }
set { _name = value; }
}
//////////////////////////////////////////

我想在跳转到这个页面时为Id和Name属性赋值,
有没有方法能像为类的属性赋值一样,为.aspx页面的属性赋值呢?
如下方式:
Class1 c1=new Class1();
c1.ID=1;
c1.Name="xxx";

因为我想aspx页面也是类,应该也可以不使用get/post,session,cookie等方法,同样完成页面间传值
展开
 我来答
由于有雨犹豫
2010-03-04 · 超过19用户采纳过TA的回答
知道答主
回答量:37
采纳率:0%
帮助的人:0
展开全部
你的思路是想避免使用QueryString Session Cookies等方法来实现页面跳转的同时为参数赋值。
如果值是固定的,你就可以采用在Page_Load事件里面赋值,可以用IsCrossPostBack属性来确认是否为一个跨网页提交发生,如果这个属性值为true,那么目标网页就是通过一个跨网页提交动作。
如果是未知的值,那么先写一个类比如C
然后你的方法:Class1 c1=new Class1();
c1.ID=1;
c1.Name="xxx";
然后C类使用Response.Write将整个网页以字符流的形式输出出去
比如Response.Write("<span>ID是"+ID+"</span>");
---------------------------------------------------------------------
实际上aspx并不是类,只是有有一个类与之绑定,在页面生命周期中IIS会根据页面头的设定实现这个类,并维护它。
毕竟ASP.NET还是一种基于HTML标准的应用。归根结底是串流形式,所以不是真正的面向对象。
odime
2010-03-04 · 超过60用户采纳过TA的回答
知道答主
回答量:150
采纳率:0%
帮助的人:201万
展开全部
你需要在 事件里对属性进行赋值,比如Page_Load 事件里this.Name="XXX"
如果你是想要对本页面做初始化赋值的话,在Page_Load 里赋值就好了

不过要提醒你的是Web开发 变量在被postback了以后会丢失的,你需要用ViewState或者其他方式进行状态保存。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
nlb68686
2010-03-04 · TA获得超过674个赞
知道小有建树答主
回答量:2096
采纳率:0%
帮助的人:1042万
展开全部
传值的时候还是用a.axps?id=1&name=aaa;
接收时用,
protected void Page_Load(object sender, EventArgs e)
{
if (IsCrossPagePostBack)
{
string id = Request.QueryString["id"];
string name = Request.QueryString["name"];
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式