这两天看到坛子里面有朋友发了篇《苦逼的三层代码》,回帖的人很多,而且还上了推荐,贴主在文章中说到:采用传统的三层架构写代码,每个数据表都要定义一个实体对象,编写后台的时候,Web层需要针对页面的用户输入逐个手动编写赋值到实体对象的各个属性,然后DAL层还要用SqlHelper 进行各个存储过程对应参数的实体赋值,我的天呀,写几个表还好,多个表呢,写的后台都没力气,典型的苦逼代码工没营养,各位有啥好的处理方法或开发方式。。 有人说用三层代码生成器,有人说用ORM,也有人说用反射,但我觉得,这些都没有脱离“三层架构”的至酷,为什么一定要用三层?为什么三层就一定需要使用实体类?为什么要手工写那么多对象属性的取值、赋值代码? 我觉得,要根据情况具体问题具体分析,不能说在三层架构的项目里面就不允许使用一层,或者说四层代码,反过来也是,比如我们可以在项目里面有业务逻辑复杂的地方使用三层来开发,没有业务逻辑的地方,比如简单的数据录入、修改、查询的地方,直接一层,在ASPX的后台方法里面调用某个组件来完成数据的CRUD。我在项目实践中就是这样做的,我为WebForm、WinForm项目开发了一套“数据控件”,只需要在控件的设计属性里面配置下控件映射到数据表或者实体类的字段或者属性名称即可,采用数据控件的机制,最后实现了一行对代码解决这些问题,详细内容大家可以参考我的文章《不使用反射,“一行代码”实现Web、WinForm窗体表单数据的填充、收集、清除,和到数据库的CRUD》,这里给大家贴一张控件设置的效果图,相信明眼人一眼就看出来怎么用了。
winform数据库weborm
winform数据库weborm
CSDN 怎么没法显示图片?
我上传一张再试试。
项目网址: http://pwmis.codeplex.com 到下载页,选择“ PDF.Net_V4.6 WinForm 数据表单实例 ”这个下载链接即可。另外还有一个散分贴,200分,大家去接分吧。
http://bbs.csdn.net/topics/390382179
OQL语言直接“点”出来“Select”“Where”“Orderby”“InnerJoin”程序报错再也不会是SQL语句的错了!!
WCF?可 PDF.NET是数据框架啊!