gpt4 book ai didi

c# - 我可以利用 ViewState 来消除传递查询字符串的需要吗?

转载 作者:行者123 更新时间:2023-11-30 22:49:19 24 4
gpt4 key购买 nike

我有一个包含多个可扩展列表的页面。在一个完美的世界中,我想显示每个列表的链接,当单击其中一个时,它将重新加载显示该特定列表的页面。我读到 ViewState 可以消除对隐藏输入字段、查询字符串等的需求,但我不熟悉这个概念。

基本上我需要完成两件事:

  1. 点击链接时将列表ID添加到ViewState对象
  2. 加载页面时从 ViewState obj 读取 ID,显示该列表

任何人都可以为我提供有关此主题的一些资源和/或帮助吗?谢谢!

最佳答案

ViewState 本质上是一个长编码的隐藏字段,存储在页面的顶部。它与常规隐藏字段之间的主要区别在于 ASP .NET 将对其进行解码并在回发时自动对其进行解析。

有更好的方法可以实现你想做的事情。

  • 您可以使用查询字符串。您传递的只是一个列表 ID。将列表 ID 附加到链接的末尾,然后在 Page_Load 上查找它。如果找到合适的列表,请加载它。您需要处理未传递列表 ID 的情况。 查询字符串不是邪恶的。它可以极大地帮助减少页面重量。当与体面的 URL 重写器一起使用时,您可以很好地控制通过的内容(以及最重要的是,不通过的内容)
  • 如果您使用 ASP .NET 控件(例如 Button 或 LinkBut​​ton)来触发列表的显示,您可以设置 CommandArgument 属性并在事件代码中选择它。然后,您可以将其作为参数传递给处理列表呈现的任何方法或控件。

关于c# - 我可以利用 ViewState 来消除传递查询字符串的需要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1206492/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com