首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

使用ViewState怎么传值

2012-03-26 
使用ViewState如何传值比如说有两个页面one.aspx各two.aspx,如何在one页面给ViewState赋值在two页面取出Vi

使用ViewState如何传值
比如说有两个页面one.aspx各two.aspx,如何在one页面给ViewState赋值在two页面取出ViewState的值呢?

在提一个问题:
页面传值
ession(viewstate)简单,但易丢失

application 全局

cookie 简单,但可能不支持,可能被伪造

input type="hidden" 简单,可能被伪造

url参数简单,显示于地址栏,长度有限

数据库稳定,安全,但性能相对弱

貌似都不好那我该使用哪个呢?

[解决办法]
就通过url参数啊,最方便了
[解决办法]
ViewStat是基于客户端的状态管理

页面传值可以考虑Session

如果不想Session


Post...
[解决办法]

viewstate只是页面级的。。。

还是用URL传值比较好。。。
[解决办法]
ViewState跨不了页面吧
//利用PostBackUrl属性和page的PreviousPage属性结合实现页面间传数据
//当前页
<asp:Button ID="Button1" runat="server" Text="Button" 
PostBackUrl="~/Default3.aspx" CommandArgument="需要传递到数据" />
//设置PostBackUrl属性,可以把要传递的数据付给

Default3.aspx页中
Button btn = this.PreviousPage.FindControl("Button1") as Button;
 Response.Write(btn.CommandArgument);//输出需要传递到数据


或者url传递,



[解决办法]
最好用Session,要不然用缓存也可以,viewstate是间页面传值的,你用不了
[解决办法]
ViewData不行的...
用session吧,cookie不保险
[解决办法]
ViewState是页面的临时值,不能进行两个页面的传值。
如果进行两个页面跳转的传值可以用参数,或者session或者用HiddenField隐藏域
[解决办法]
为什么要把viewstate传给其他的页面?
[解决办法]
参考,使用PostBackUrl和PreviousPage,但不用FindControl:http://www.cnblogs.com/insus/articles/2050832.html

热点排行