浅谈一下我使用的开发小规模B/S应用的架构

本文介绍了一种面向.NET领域的轻量级B/S应用架构,包括SQL2005Express作为数据库、Castle ActiveRecord用于持久化层、TransactionScript模式处理业务逻辑及Asp.net结合MagicAjax.net实现表现层。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个是面向 .Net 领域的,适用于小规模的 B/S 应用。
我编写的很多应用都是基于这个架构的,我的核心出发点就是以开发效率为先


一. 数据库:  SQL2005Express
主要是部署方便,Copy过去就行了。
当然如果要和原系统数据集成,只能看原来用的是啥样的DB了。 


二. 持久化层:  Castle ActiveRecord
简单易用,大大提高了开发的效率。
不过有这样一些主要的不足之处:
       【1】ActiveRecord模式混杂了持久化逻辑和业务逻辑,有些丑陋。
       【2】性能。
       【3】SQL语句透明化了,没法进行细粒度控制。      

【1】,【2】对于小规模应用基本不考虑了,如果在【3】上边有问题的话就没辙了,可以考虑iBatis.net
Btw: 感谢Terrylee的Castle系列文章,从中又学到了好多知识,关于AR的详细信息与评估,我就不班门弄斧了,看Terrylee的相关文章吧:
http://terrylee.cnblogs.com/archive/2006/04/28/387503.html


三. 业务层:     无,或者用Transaction Script模式
如果业务层真的很薄(只有一些CRUD操作),那就直接在页面的Action中调用持久化层就行了,没有必要在业务层再进行一次包装。
否则使用Transaction Script模式就可以了(又一个丑陋的东西,OP的产物),关于Transaction Script模式可以参考Fowler的PoEAA:
http://martinfowler.com/eaaCatalog/index.html


四. 表现层:     Asp.net配合MagicAjax.net
表现层就没啥可说得了,多使用Asp.net2.0的那些新特性就可以了。
至于使用MagicAjax.net是因为简单易用(版本号现在才到0.3,有点怕怕~~),其中还是遇到了很多小问题的,我的解决方法就是:那就不用Ajax了,-_____- 呵呵。

 

关于小规模应用的架构,基本就这样了,希望能给和我开发类似应用的朋友们一些参考,其中肯定有很多不当或者错误之处,欢迎大家指正。

 http://interma.cnblogs.com/archive/2006/05/03/390928.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值