有人提到.net中Web模块算是设计的很好的一部分,仔细想想asp.net应该更好:
1. 后台PostBack
现有的PostBack机制需要提交整个页面,造成页面闪烁。
实现设想: 通过变更script的src或者xmlhttp或者隐藏frame都可以实现后台postback。
服务器根据需要返回对应的数据、脚本来控制页面的更新。
服务器返回脚本的思路是拦截postback过程中对控件造成的变更,对有需要反应到页面的部分,生成对应脚本给页面执行。这里可能用aop来实现会比较好。
如果能实现,大家就没必要费劲的考虑各种script callback了。
2. 智能提交。
现在postback把页面上所有input都提交,效率不高. 实际上有些input根本没修改过。
echo在这方面就比较智能,在页面上没有修改过的input不会提交,在做大型页面的时候比较有用。
3. 窗口、Frame支持。
webform在这方面几乎没有什么表现。如果能在程序中new出新窗口,控制frame,应该更方便一些,这样基本可以摒弃page的概念来开发web程序。