首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ViewState变量

使用ViewState变量
EN

Stack Overflow用户
提问于 2014-01-01 11:37:27
回答 4查看 4.3K关注 0票数 0

我想使用viewstate变量的值,它保存在另一个页面的一个页面中。但是在这样做的同时,它显示了NullReferenceException。我是ASP.net的新手。请帮帮我。

在register.aspx中

ViewState("name")=textbox1.text

在success.aspx中

dim a as string

a=ViewState("name").toString

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-01-01 11:41:57

使用会话“name”= textbox1.text..。

如果我没有弄错,你就没有直接控制或者应该直接控制视图状态。

票数 0
EN

Stack Overflow用户

发布于 2014-01-01 11:49:44

ViewState是一种在回发中持久化状态的技术,在加载另一个页面时会丢失。因此,您需要使用另一种方式将数据发送到下一页。在MSDN上阅读更多内容

跨页面发送数据的常见选择包括:

  1. QueryString
  2. 通过设置“上一页”属性
  3. 会话变量
票数 0
EN

Stack Overflow用户

发布于 2014-01-01 11:53:16

ViewState仅限于一个页面,因此不能在其他页面上使用它。原因是ViewState被序列化在页面输出中的隐藏字段中,该字段在回发时传输到客户端并返回到服务器。

如果要将数据传输到另一个页面,则有几种其他选择:

  • @AnastacioGianareas也指出,会话记忆就是其中之一。它位于服务器上,但会话将在用户不活动的特定时间后过期。位于服务器上,如果会话中有许多用户和大量内存,则会降低应用程序的可伸缩性。
  • 将数据作为查询字符串参数传递到另一个页面,例如重定向到"Success.aspx?name=“。这将适用于可以放入查询字符串中的较小数量的数据(例如ids或名称)。重要的是,客户端还可以使用该查询字符串参数请求Success.aspx,因此应该为不关键的数据保留该参数,并仔细验证。
  • 使用cookie将其传输到客户端并再次返回。

这个链接很好地概述了各种备选方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20868215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档