asp.net 我们应该怎么用? 以及我们有了asp.net 我们还需模版引擎吗?

有点asp.net开发经验的程序员都知道.

asp.net中的服务器端控件是多么的不符合实际应用.除了 <asp:Button> 和 <asp:Literal> 偶尔用之,其它的控件还有人在使用吗?

我用asp.net服务器端控件做了很多 ERP OA等数据库项目..总结出的一条经验就是

不要使用asp.ne服务器端t控件... ,不知道为什么微软工程师能搞出这么一套让人搞笑的控件模式...


为啥? 

首先asp.net语言是为了开发软件产品的..

我们的软件产品分为两种 

一种是网站,

一种就是B/S架构的信息管理软件.


第一种网站,我想做过的都应该知道.asp.net中的runat="server" 是要付出相当多的代价的.. 而实际用处却不多.

如果你的网站页面全部是用asp.net控件做出来的.那么很不幸的告诉你..效率太低了..

可维护性也很糟糕.甚至都不如php那种写法...

主要是asp.net控件想模仿C/S架构的那种控件使用效果.

结果是得不偿失的..

因为做网站根本就是单项性的..用户顶多就是用用超链接.看看文档.

当然asp.net也不能一竿子打死.还是有很多好用的地方的.比如说.用户自定义控件. 可悲的是自定义控件还有个FindControl( )的问题.. 难用至极..

用的我都想吐血..

第二种是B/S架构的信息管理软件

B/S架构的信息管理软件 要求的最大特点就是用户交互性.说白了就是用户体验.

如果你全部都用asp.net的服务器端控件来做..我想说的是最后你会被无尽的参数传来传去折磨致死..

用户也会被你无情的页面刷新而等的不耐烦..

因为这个原因我曾经甚至觉得B/S架构的软件简直就是垃圾..想走C/S的道路..

后来在实际的维护中发现确实是B/S架构的软件维护工作量小.

当然后期接触了EXTJS,Flex,RIA之后..又走回了B/S架构软件的道路..

采用了EXTJS和RIA之后我会asp.net控件彻底说再见了..


经常做的项目都是B/S架构的信息管理软件

新项目是网站..

于是我就开始思考了..

国外开源的项目多数都用castle来做.

他们的好处好像很多..也是完全抛弃了asp.net的那套机制..

于是我在想到底用不用castle.. 虽然学了有用.但是我还想说..

学习有风险,开学需谨慎...学习也是需要成本的...我曾经linux ,java,.net, c,破解, 啥的都搞都学.结果这些东西都是没用的..工作用不到,几个月就忘光了..只要你头脑灵活..用到再学都来得及.

思来想去还是采用自己能把握的东西才能保证项目的按时完成..

于是还是选择了老路子asp.net 

但是我的项目里用的最多的就是自定义用户控件.

基本上很少使用服务器端控件..

但是自定义用户控件也是有不好的地方的比如上面说的FindControl问题.. 好纠结...还有该死的ID会自己变的问题,...

这些问题本来是没有的都是微软给我们制造的这么多麻烦..


后来发现还是的需要一个模版引擎..

网上找了找蛮多.但是都太复杂. 稳步稳定都难说...

无意中发现一篇文章讲  HttpContext.Current.Server.Execute()方法的.可以做模板引擎..

仔细研究一番,,还真是我想要的效果...

特此推荐给大家..


 

TextWriter write = new StringWriter();
HttpContext.Current.Server.Execute(TemplatePath,write, true); 
return write.ToString();










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值