您的位置:绿色软件编程开发 -> .Net 专栏关于ASP.NET下身份信息的保存(三)
关于ASP.NET下身份信息的保存(三)
发布于:2007-2-18 14:13:06来源:不详阅读次数:TAG列表:暂时还没有tag
前两节描述了我对身份验证信息的保存的认识,没有看的哥们请依次看过关于ASP.NET下身份信息的保存(二),关于ASP.NET下身份信息的保存(一) .

今天我想说一下Server.Transfer,在上两节里,我们是靠Server.Transfer方法将保存的用户信息传递到下一页的.但是在实际的应用中我发现应用前两篇文章的想法的弊端.

Server.Transfer();方法在应用中只能在两个页面之间传递值,但是当加入第三个页面的时候却无法将值顺利的保存并传递。

譬如:有页面A.aspx(为login页面),B.aspx(信息汇总页面),C.aspx(单个信息页面)在A页面中我们执行身份验证并且保存在this.Login_User属性里然后Server.Transfer(B.aspx),则值顺利传递到B页面,然后在B页面中也Server.Transfer(C.aspx);理论上讲值应该可以顺利传递到C页面,但是我们在C页面里通过

B ls=(B) Context.Handler;//读取页面值
userinfo=ls.Login_User;//读取用户信息值

方法却无法填充userinfo变量,为什么?

哥们儿,搞了一个上午总算明白了,Context是无法在第三个页面里继续保存里面的信息的,大家不能象用session那样去使用Context,所以我们在B页面里应该再次执行一遍this.Login_User=userinfo;这样将值再次添加到Context,然后再Server.Transfer();就可以了。

以上是小弟的一点拙见,愿意拿出来和大家探讨。如有高人有更为深刻的认识

复制地址发给您的朋友阅读!

查看更多评论

100分 85分 70分 55分 40分 25分 10分 0分 用户名字: