在 listview itemcommand ASP.NET 上保留会话变量的最佳方法

发布于 2024-09-13 05:25:48 字数 129 浏览 4 评论 0原文

因为 itemcommand 事件在大多数(如果不是全部)页面/控件初始化/加载事件之后触发。保留在 itemcomment 上修改的会话变量数据(例如添加项目)以便页面可以使用修改后的会话对 itemcommand 做出反应的最佳方法是什么?

As the itemcommand event fires after most if not all page/control init/load events. what is the best way to persist session variable data that is modified on itemcomment (adding items for example) so that the page can react to the itemcommand using the modified session?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

暖阳 2024-09-20 05:25:59

您可以在页面生命周期的早期捕获回发:

// id of the control
   string id = Request.Form["__EVENTTARGET"];  

   if (!string.IsNullOrEmpty(id) && id.Contains("myControlId"))  
   {
        string argument = Request.Form["__EVENTARGUMENT"];
        ...
   }

但这既不优雅也不安全。我会遵循 Skowronek 的建议:在 PreRender 上添加更多逻辑。

You could catch the postback earlier in the page's lifecycle:

// id of the control
   string id = Request.Form["__EVENTTARGET"];  

   if (!string.IsNullOrEmpty(id) && id.Contains("myControlId"))  
   {
        string argument = Request.Form["__EVENTARGUMENT"];
        ...
   }

but it's neither very elegant nor safe. I would follow the suggestion of Skowronek: to put more logic on PreRender.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文