PDF.NET 开发框架

 

 

 

PWMIS数据开发框架


关于框架的名字由来

         在我设计www.pwmis.cn 站点(原域名已经过期,现在使用新域名www.pwmis.com )的时候,考虑到架构的兼容性和将来升级的可能性,最重要的是没有足够的时间去为网站添加和维护很多复杂的程序,所以在借鉴前人成功经验的基础上,设计了一套全新的快速数据处理框架 PWMIS Data Develop Framework,简称PDF。本套框架的思想是借鉴Java平台的Hibernate 和 iBatis 而来,兼有ORM和SQL-MAP的特性,同时还参考了后来.NET的LINQ(本框架成型于2006年,当时还未听说过LINQ)使用风格,设计了OQL查询表达式。本框架的设计思想是通用的,完全可以移植到Java 平台,现在只提供了.NET平台的实现,暂且将本框架命名为

PDF.NET

框架支持的功能

  • UI层(WinForm/Web)控件数据绑定、映射与查询;
  • BLL层实体对象查询(OQL)
  • DAL层SQL语句和.NET数据访问代码映射(查看 SQL-MAP 原理)

PDF.NET体系结构图

系统结构图

SQL-MAP结构图

SQL-MAP结构图

集成开发工具--访问数据示例

(该工具下载地址:http://ft.codeplex.com/releases/view/65308

详细说来,框架还包含以下特色功能:

  • 数据控件:
    • 支持WinForm / WebForm,使用上无差别;
    • 智能表单数据控件,只需要一行代码实现页面数据的增,删,改,查;
    • 表单数据的自动收集和填充,自动生成查询条件;
    • 无需任何后台代码即可分页的增强数据分页控件。
  • ORM:
    • 无反射:整个框架没有使用反射 来实现ORM和界面数据绑定,可以保证数据操作的高效率。
    • ORM 查询语言--OQL:类似LINQ的支持ORM实体类查询的OQL表达式(有了LINQ为啥还要搞一个OQL?本框架OQL的基本设计在LINQ或者说本人知道 LINQ之前,另外,.NET3.5框架才正式支持LINQ,而我们公司的一个产品却因为采用了3.5框架安装部署不方便成为市场和客服常常抱怨的理由。未来还有这样的理由,我们迫切需要一个类似LINQ的东西运行在某些客户过时的机器上。 ) ,OQL支持“多实体类连接查询”,突破普通的ORM只能查询单个实体的限制。
    • 集成开发工具,支持从表、视图、存储过程、自定义查询生成实体类。
  • SQL-MAP:
    • 集中管理SQL语句,可以生成实体类和根据SQL配置文件自动生成 DAL 代码的代码生成器以及SQL配置文件管理程序;
    • 通过切换SQL-MAP配置文件,支持SQL查询的本地化特征(多数据切换);
    • 提供SQL-MAP配置管理工具,并且支持VS进行配置文件编辑的时候的智能提示;
    • 与iBatis比较,开发使用几乎“零”配置。
  • 自动分页:
    • 多种分页功能,支持分页类,控件分页,OQL分页,SQL-MAP分页
    • 基于SQL词法分析的支持多种数据库的高效分页类,你只需要设置SQL语句和分页属性它便能够为你生成特定数据库平台的当前页数据的SQL语句;
  • 多模式支持:
    • 控件开发模式--内置数据控件支持;
    • OO开发模式--ORM框架和独特的ORM查询语言支持(OQL);
    • SQL开发模式--(SQL-MAP)自动生成DAL层代码;
  • 跨平台支持:
    • 已经验证,框架在Mono 框架的支持下,可以运行在Linux 系统上 ;
    • 仅需.NET 框架2.0支持(不是指CRL 2.0),同时支持.NET 3.0.3.5,4.0,4.5 等后续版本。

     

    与其它数据处理框架的关系

            本框架是总结多种数据处理框架的优点,去除其复杂性后的轻量级的数据处理框,所以可能没有你熟知的下列重量级框架强大的功能。本框架的设计目标是 轻量,快速,通用,易学 !

    • Hibernate:借鉴了它的ORM原理和HQL语言,使用了类似的简单的ORM功能;
    • iBatis:借鉴了其SQL-MAP功能,对其复杂性进行了大力精简;
    • LINQ/Entity Framework:提供类似LINQ的OQL语法

     

    为什么要选择PDF.NET框架?

    • 喜欢简单的开发过程!
    • 老板逼的急,要快速开发完成!
    • 喜欢ORM框架!
    • 喜欢存储过程+手写SQL的开发方式,更有“安全感”!
    • 希望像写SQL那样来操作ORM框架!
    • EF、NH等框架在我的项目中某些特性没法完全满足,想定制修改或者扩展,但没有源码或者源码规模巨大!
    • 程序复杂,执行要快!
    • 团队中有人喜欢拖控件,有人喜欢写SQL,也有人喜欢ORM,众口难调,作为Leader,不知道如何是好!
    • 项目大,为确保成功,需要掌控所有的细节,包括ORM等数据访问的细节!
    • 系统需要移植到新的数据库系统,但原来的系统手写了很多特定数据库平台的SQL语句,没法移植!
    • ...

     框架是我们多年开发经验的总结,在众多流行的开发框架下,相信你选择PDF.NET没错!

  • 爱心行动

    灾后重建:

        本人属四川德阳人士,2008年中国四川汶川大地震德阳也是重灾区,尽管灾害已经过去数年,但灾区重建仍然是一个漫长过程。 如果你觉得本软件对您有一定价值,并且愿意支援灾区重建,请捐助灾区人民,或者对本软件友情赞助,谢谢所有有爱心的人士鼎力支持!

    相关活动介绍:众志成城,抗震救灾

    开源基金:

        中国的软件开源事业需要更多的人的关心和支持,PDF.NET为此在2011年开始加入开源行列,并在2012年国庆前对最新版本进行开源,希望国人在基础开发框架方面有更多的选择,促进中国软件事业的发展。但PDF.NET出身草根,它的发展需要您的更多呵护。如果您觉得它的确为你的软件开发起到了帮助,并且愿意更进一步的支持框架的发展,请捐助PDF.NET,我们将使用这笔资金来进行框架的宣传、推广、培训活动;支付框架所在网站、源代码托管服务;组织开发活动,奖励开发团队的贡献。

        感谢PDF.NET的会员对于框架已经进行过的捐助,期待有企业用户也对本框架进行捐助。

    捐助热线:
    邮箱:dth1977@sohu.com QQ:45383850
    捐助帐号:支付宝(dth1977@sohu.com

     

    框架应用的项目案例

    • 2007。河南某市测绘流程管理系统,PDF.NET Ver1.0,工作流和信息管理部分;
    • 2008。北京某房产备案管理系统,PDF.NET Ver1.0,工作流部分;
    • 2009。北京某金融咨询公司银行数据应用项目,PDF.NET Ver2.0,作为系统核心框架部分;
    • 2010。北京某金融咨询公司短信发送平台项目,PDF.NET Ver3.0,作为系统核心框架部分。
    • 2010-11。北京某金融咨询公司基金营销系统,PDF.NET Ver4.0,作为系统核心框架部分。
    • 2011-10。360基金卫士,PDF.NET Ver4.1,作为系统核心框架部分。
    • 2012-5 。北京某B2BP在线拍卖系统客户端软件,作为后台服务的持久层组件。

    。。。更多成功案例等待你的实现:)

    <!--mstheme-->

    官方资源

    本框架官方网站 http://www.pwmis.com/sqlmap (新申请域名,原网址:http://www.pwmis.cn/sqlmap

    博客园:http://www.cnblogs.com/bluedoctor

    CSDN:   http://blog.csdn.net/bluedoctor

    开源项目:http://pwmis.codeplex.com

     

    官方QQ群:43109929 (加入群请注明:PDF.NET技术交流)

     

    本人联系方式 QQ:45383850 (深蓝医生)或者 MSN:bluedoctors@msn.com (抗震救灾)

    相关文档和更多信息请查看官方网站。

     

     

    合作方

    会员SVN 源代码托管服务:http://yekuke.com/index.php/pdfnet-faqs/

    PDF.NET 问答:http://www.kuteku.com/ask/?ct=browser&tid=8

  • 0
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 37
    评论
评论 37
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值