gpt4 book ai didi

c# - 如何存储 ASP.NET CommandName 和 CommandArgument 值?

转载 作者:太空狗 更新时间:2023-10-30 00:55:08 27 4
gpt4 key购买 nike

有谁知道控件的 CommandName 和 CommandArgument 属性存储在哪里?我对检索它们不感兴趣,只是想了解更多有关 ASP.NET 内部的信息以及 future 页面大小的考虑。 :)

我创建了一个简单的页面,其中包含 3 个按钮,它们的 commandArg 和 CommandName 设置如下:

<asp:Button Text="Click1" runat="server" CommandArgument="1" CommandName="Delete" OnCommand="CommandExec" />
<asp:Button Text="Click2" runat="server" CommandArgument="2" CommandName="Save" OnCommand="CommandExec" />
<asp:Button Text="Click3" runat="server" CommandArgument="3" CommandName="Copy" OnCommand="CommandExec" />

将 CommandArgument 或 CommandName 更改为相当大的值不会影响 ViewState 的内容和大小,那么这些值存储在哪里?

谢谢

最佳答案

如果你想了解 ASP.NET 内部原理,我仍然认为最好的书是 Developing ASP.NET Server Controls and Components by Nikhil Kothari and Vandana Datye .它是为 .NET 1.x 编写的,所以有点过时,但仍然很好地涵盖了基本架构。

在您的示例中,ViewState 大小未受影响的原因是在处理标记时的 Init 阶段未跟踪 ViewState。在标记中设置为固定值的属性值将硬连接到编译 ASP.NET 页面时生成的代码中。

This MSDN article很好地概述了 ViewState。

如果将按钮放在数据绑定(bind)控件(如转发器或 GridView)中,并使用数据绑定(bind)语法为每行的 CommandArgument 设置不同的值,您将看到 ViewState 增长。

关于c# - 如何存储 ASP.NET CommandName 和 CommandArgument 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10494938/

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