所以我建立了一个网站,在许多页面上,在服务器上构建了一个标准的“网格”(asp:table),在许多页面上,这些网格包含标准链接(“编辑”、“删除”等)或每行一个复选框,用于多选操作。
必须在页面生命周期中尽早构建网格,以便可以访问动态服务器控件以进行事件处理 (CommandEvents)。例如,触发命令事件(在命令参数中传递记录的 ID)的“编辑记录”按钮必须在 page_load 之上或之前构建,否则将不会处理该事件。这很好用,但有时提前构建整个网格并不是很有效。例如,如果它是执行操作然后离开页面的操作,那么构建整个网格只是为了在页面呈现/需要之前离开页面是愚蠢的。或者,在操作从表中添加或删除记录的情况下,表已经构建,并且必须第二次构建,
我的问题是,在设计流程方面我是否遗漏了什么。我想这是 CRUD 类型网站的标准场景。基本上,我希望能够以最少的冗余/不必要的服务器处理来处理来自动态构建的控件的事件。
动态构建标准 html 控件并使用客户端脚本执行 __postback() 传递“action”和“ID”值会更好吗,这样它们就可以在网格之前通过 Page_Load() 访问建造?我是否应该利用在访问动态 asp 服务器控件之前可以使用 Request.Form 信息这一事实?我确实喜欢以更加面向对象的方式(而不是构建动态 html 字符串)访问/设置动态控件的属性的能力,但我认为在这种情况下效率胜过期望。