欢迎使用 “PDF.NET”--PWMIS开发框架

--------做最简单,最快,最好用的开发框架!
"简单与效率的平衡"--“PDF.NET 官方网站”欢迎您的到来!(推荐使用IE浏览器浏览本页面)

核心导航

开源捐助账号

二维码捐款方式:


新版本信息

  • Ver 5.1 更新
    • 重写了ORM核心的 ORM查询语言:OQL;
    • 增强了基础的AdoHelper功能,支持轻量级的ORM映射;
    • 增加了内存缓存;
    • 增加连接会话功能,以支持长连接的数据访问
    • 增加Access数据库访问扩展
    • 增强了WinForm/WebForm 数据控件功能
    • WinForm数据控件VS IDE设计器支持
    • 其它积累的微小更新
  • Ver 4.6 更新
    • 修复多个Access、Oracle的Bug
    • 修改使用SqlServer、Access 等SQL语句中使用Distinct 分页的问题
    • 完善读写分离功能
    • 统一WebForm,WinForm数据控件
    • 增强AdoHelper功能,支持格式化查询
    • 实体类可以根据接口自动生成
  • Ver 4.5 更新
    • 数据访问对象支持指定事务级别
    • 取消了Select操作在事务中默认关闭连接的问题
    • ORM查询支持直接使用POCO实体类
  • Ver 4.3 更新
    • 实体类查询的时候,对执行的参数化查询指定字符串参数的长度,优化执行效率
    • 增加了以实体类改变了值的属性,作为查询条件的方法(网友[左眼]贡献代码)
  • Ver 4.2 更新
    • OQL支持3个以上的实体连接查询
    • 增强了DataSet的处理,一行代码更新到数据库
    • 其它积累的微小更新
  • Ver 4.1 更新
    • 支持MySQL,PostgreSQL等数据库
    • 支持实体类连接查询(即多表查询的ORM),实现实体类与普通类的数据映射
    • 改进Web数据控件和数据窗体功能
  • 4.0 更新
    • 全面改写了实体类处理程序,效率提升10倍
    • 改进实体类生成器,支持从 SQLSERVER 表字段说明生成实体类属性说明
    • SqlMapDAL 支持外部接口定义
    • 简化了支持多个SqlMap文件的处理方式
    • SQL-MAP支持复杂查询的分页
    • SQL-MAP改善了对存储过程的支持
    • OQL支持单行表达式语法
      (OQL.From(Entity).Select(....).Where(...).OrderBy(...).END)
    • 实体类支持高效率分页
    • 优化了生成内部数据访问对象的效率(不再依赖于反射)
    • 优化了其它操作的效率
  • Ver 3.0 更新
    • 全面改写了SqlMap模块,真正支持SQL-实体类 映射
    • 全面调整了框架的命名空间,合并了基础程序集成为一个 PWMIS.Core.dll
    • 修正了自2.0以来的Bug
    • 改进了代码生成器
  • Ver 2.0 更新
    • 使用.NET 2.0技术改写原来所有的模块
    • 增强了Web控件验证功能
    • 全面改写原有实体类,提供实体类生成器
    • 全面改写了OQL功能
    • 支持.NET 2.0数据库连接配置
  • Ver 1.0 功能
    • 提供SQL-MAP功能
    • 提供ORM功能,并提供OQL功能
    • 提供控件数据绑定功能
    • 提供高效分页控件
    • 提供控件数据验证功能

合作方

友情链接

关于框架的名字由来

         在我设计www.pwmis.cn 站点(原域名已经过期,现在使用新域名www.pwmis.com )的时候,考虑到架构的兼容性和将来升级的可能性,最重要的是没有足够的时间去为网站添加和维护很多复杂的程序,所以在借鉴前人成功经验的基础上,设计了一套全新的快速数据处理框架 P WMIS Data Develop F ramework,简称PDF.NET

        框架追求的目标是简单与效率的平衡,体现在:代码的精简,开发、维护的简单与追求极致的运行效率

本套框架的思想是借鉴Java平台的Hibernate 和 iBatis 而来,兼有ORM和SQL-MAP的特性,同时还参考了后来.NET的LINQ(本框架成型于2006年,当时还未听说过LINQ)使用风格,设计了OQL查询表达式。本框架的设计思想是通用的,完全可以移植到Java 平台,现在只提供了.NET平台的实现,暂且将本框架命名为

PDF.NET

(当前最新版 5.1.2,下载请看下面说明。)

从2013.10.1日起,原PDF.NET 将更名为

SOD
one SQL-MAP,ORM,Data Control framework
原PDF.NET框架将成为一个全功能的企业开发框架,而 SOD框架将是PDF.NET开发框架下面的 “数据开发框架"
PDF.NET 开发框架

 

框架支持的功能

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

框架图例:
PDF.NET体系结构图

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

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

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


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

  • 数据控件:
    • 支持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 等后续版本。
    • 支持各大主流数据库平台:SqlServer,Oracle,MySQL,PostgreSQL,SQLite,Access,SQL CE等,只要有Ado.net驱动即可支持。

     

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

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

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

     


    框架下载

     
    开源项目下载:
     
    1,去开源项目网站的 SOURCE CODE 页面,点击“ Download ”,这种方式下载的RAR包可能解压有问题(MS的问题:《),不过不必理会,看源码是可以的。

    2,使用 TFS连接项目源码,你的连接用户名也在 SOURCE CODE 页面 上,点击“ Connect ”查看。

    3,使用SVN,获取地址的方法,同方法2。

    4,直接在项目网站的 DOWNLOAND 页面,点击 “ PDF.NET.Ver4.6-OpenSource ”。

    CSDN下载:
     
    1, PDF.NET Ver4.5开源 源码 1
    标签: ORM SQL-Map 数据框架 分页控件
    源码中包含框架核心组件和一个使用DDD模式设计开发的“超市管理系统”实例程序,示范了智 能表单控件的使用和OQL的各种高级应用,是研究DDD的一个实验性程序,详细内容请见《 “领域驱动开发”实例 之旅(1)--不一样的开发模式

    上传者:bluedoctor 上传时间:2012-09-29

    2, PDF.NET框架V3.0开 源源码
    标签: ORM SQL-Map 数据框架 分页控件
    PDF.NET框架全称是PWMIS数据开发框架,是一个轻量级的具有ORM和SQL-MAP功能的框架,内置 Web、winForm数据控件,力求开发过程快速简单,其中的OQL表达式可以看做对象化的SQL,比LINQ使用简单。
    上传者:bluedoctor 上传时间:2011-09-06
     
    3, ASP.NET MVC +PDF.NET构建一个简单的新闻管理程序 0
    标签: ASP.NET MVC PDF.NET 新闻
    在强调更好的Web用户体验前提下,程序员需要将UI的主要工作让步于美工设计人员,程序员的 主要工作主要关注与后台逻辑开发,这种开发模式下,MVC无疑是最佳选择。本实例程序采用ASP.NET MVC+PDF.NET构建,是学习这两种技术比��
    上传者:bluedoctor 上传时间:2011-01-07
    4, PDF.NET数据开发框 架V3.0演示版 2
    标签: ORM SQL MAP 数据框架
    ---春节已经过了,本资源优惠奉送了,再次促销,只需2分!演示版只是没有框架核心部分的 源码,功能无任何限制。框架支持的功能 * UI层(WinForm/Web)控件数据绑定、映射与查询; * BLL层实体对象查询(OQL) * DAL层SQ
    上传者:bluedoctor 上传时间:2010-02-07

    官方资源


    框架使用条件

    许可限制

    开源许可协议:

    本框架的开源版本遵循LGPL协议,任何单位个人均可免费使用,在用于商业项目的时候,应只包含类库引用,如果需要分发或者修改源码需要获得框架版权人的授权许可。
    详细内容请参见开源组织的LGPL协议说明。

    非开源许可协议:

    本框架的非开源部分(目前包括WinForm数据控件、外围开发支持工具),仅提供给框架的会员使用,如何成为会员,请参见下面的说明。

    技术支持

           本框对于非会员,不提供任何形式的技术服务。对于普通会员,提供在线技术服务,可以参加本框架的高级QQ群进行技术讨论。如果需要更多的技术服务,请联系本框架的版权所有人或者技术支持人员。

    如何成为会员

           方式一:

      如果你喜欢并想获取本框架的全部源码,在线向框架 捐助 10元人民币或者10美元(抱歉,本人得请翻译),并且根据PDF.NET会员公告,补充完整会员信息,经我们核实后,即成为框架的会员,享受会员服务。会员朋友可申请分配SVN账号,获取框架所有的源码。

      如果你已经发送了会员申请信息邮件,但没有收到我们的会员信息核实邮件,请请加本人QQ联系 (联系方式请看本页底部)。

    2011年5月份框架销售情况支付宝收款情况:

    注:从2012年11月开始,框架改成“收款主页”的方式并且以捐助的模式接收款项,之前为支付宝付款方式。

          方式二:

    如果你愿意在国内外知名技术社区(如博客园,CSDN等)发表PDF.NET框架的使用心得和介绍,累计发帖数量超过3 篇而且字数超过500字,即可向我申请索要 全部源码。

     

           从官方渠道获取源码的用户以下简称注册用户,注册用户可以免费享受5个月的升级和在线咨询服务。 非注册用户 本人不对其提供任何形式的免费咨询服务,你可以查阅相关帮助和设计文档,浏览官方网站或者相关论坛,博客。如果需要提供咨询,请联系本人根据你的问题或者需求提供收费服务。

           本框架的收费服务并非赢利性质 ,旨在获得你对本人劳动成果的肯定,框架的进一步发展和创新需要你的支持,同时也是你支援地震灾区人民的崇高行动(参见下文“爱心行动”)!

           本人也欢迎你从非官方渠道获取本框架程序(不包括源码 ),只要你遵循许可限制。如果你不想为本框架付费获取源码,也非常欢迎你向第三方传播本框架或教授本框架的使用,这也是你富有“爱心”的表现!


    爱心行动

    灾后重建:

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

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

    开源基金:

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

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

    捐助热线:
     QQ:45383850
    开源基金捐助账号


    框架应用的项目案例

    • 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在线拍卖系统客户端软件,PDF.NET Ver4.3作为后台服务的持久层组件。
    • 2013-11 。一汽大众集团厂商销售统计分析系统,PDF.NET Ver4.5作为系统核心框架部分。
    • 2014-6 。优信拍(北京)汽车拍卖业务管理系统,PDF.NET Ver5.0作为WinForm 前端数表单处理组件(后端为PHP)。
    • 2014-8 。药品终端网,全国最大的网上药品交易平台,PDF.NET Ver5.1作为系统核心持久层组件。 (网友:成都-Koumi)

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


    页面访问统计: 人次


    神州大众信息港--大众网络信息平台