当前位置:编程学习 > C#/ASP.NET >>

[请教]ASP.NET企业级开发有那些设计原则?

上个项目快结束的时候遇到一个这样的问题:
1, 一个页面用到Frameset,上下分开,上面的Frame是一排按钮(第三方控件生成),用户点击后,保存并关闭窗口;下面的Frame主要是输入框,用来收集用户的数据,并使用了AJAX(前台onblur事件触发),提交到服务端进行必要的验证.
2, 按照设计,应该是所有的数据都校验完毕后,用户才能点击保存按钮,但实际上是还没等到AJAX处理完成(数据量比较大,处理时间有些长),用户就已点击了保存按钮.因为最终无法完成全部数据的校验,保存也就跟着失败了.
3, 解决方法倒是有的,只要在AJAX处理过程中,将按钮Disable掉就可以,可是这个按钮是第三方控件通过JavaScript动态生成的,找不到按钮的ID,也没有可以获取按钮对象的方法.这个控件用了很长时间了,随着版本更替,功能上显得有些不足,但考虑到成本以及风险,一直没有替换掉.
4, 最终开发人员找到一个比较Trick的方法,在最上面的Frame Body里添加了一个OnMouseOver事件,通过event.srcElement过滤出所需的按钮对象,算是把问题暂时解决了.

最后问题总结大致有三个点:
1, Frameset,如果是动态构建的Frameset使得前台各个Frame之间互相调用存在不确定性
2, 更新到AJAX,没有考虑到其特殊性
3, 第三方控件没有良好的可扩展性

在这里想请教大家,对于ASP.NET企业级开发:
1, 开始设计框架的时候这种问题能避免吗? 比如Frameset, AJAX以及第三方控件的使用是否有一定的原则可以遵循?
2, 如果要重新设计这个页面,应该考虑那些问题? 将Frameset替换成MasterPage? 当然替换到这个按钮控件是必须的.

期待各位的意见,谢谢! --------------------编程问答-------------------- 可以考虑使用VS2008的AJAX母版页。 --------------------编程问答-------------------- 我比较倾向Frameset!! --------------------编程问答-------------------- 谢谢两位回复,

汗...AJAX母版页刚知道~ 回去捣鼓一下看看~

Frameset对这个页面是足够了,可是如果以后扩展到不同场合,需要动态加载N个Frame时可能会给前台脚本编写带来麻烦~ --------------------编程问答--------------------
引用 1 楼 shoushii 的回复:
可以考虑使用VS2008的AJAX母版页。
--------------------编程问答-------------------- 路过 --------------------编程问答--------------------
引用 1 楼 shoushii 的回复:
可以考虑使用VS2008的AJAX母版页。

 学习一下! --------------------编程问答-------------------- 这东西也不是固定的,
个人觉得这玩意也是
仁者见仁智者见智,



关于Ajax
根据不同的项目而定,
有必要就用一下,
比如说一些二级联动?自动完成?

对于大的数据量的操作,也是看情况而言,
首先程序的优化要尽可能的做到更好,


至于Frameset与masterpager
我个人倾向于Frame, --------------------编程问答-------------------- masterpager很简单,跟用户控件差不多,用不着捣鼓 --------------------编程问答-------------------- 个人很少使用frameset。 --------------------编程问答-------------------- 顶下
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,