.NET学习(十一)QA

本文解释了在ASP.NET Web应用程序中,为什么在一个页面加载(page_load)方法中设置的list<string>成员变量,在同一页面的按钮点击(button_click)事件中却为null的原因。这是因为每次HTTP请求都会创建新的页面实例,导致变量状态无法保持。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Q:
一个list< string >的成员变量,在page_load()方法里面给它赋了值,但是我在一个button_click事件中引用list,它的结果确是null。这两个方法都在一个类里面。
A:
因为在调用page_load()的和调用button_click()的是两个不同的对象。
过程应该是这样的:(from willian)

= page load=
class 被實例化成為a
pageload 被調用
list 被 =
返回結果到瀏覽器
a 被銷毀
= button click=
class 被實例化成為b
buttonclick 被調用
list 調用
返回結果到瀏覽器
b 被銷毀

一般客户端,一个page 类实例化一次如果不退出,它就一直在内存,所以变量也一直存在。而web,page 对象render到浏览器后就被立即销毁了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值