CYQ.Data 轻量数据层之路 V2.0 震撼惊世 支持多数据库/内置Aop(二十五)

简介:

所有文章索引:CYQ.Data 轻量数据层之路 框架开源系列 索引

 

前言:

从V1.5发布到现在时隔20天了,终于发布2.0版本了,2.0系列版本由于引入多数据库支持,内部结构改动较大。
但是外面调用方式仍保持一致向下兼容,因此若从原来V1.N版本升级到2.N版本,只需要轻轻更换CYQ.Data.DLL即可,界面代码不需要改变。

 

疑问

最近26号才刚发布了V1.5.5,怎么才3天又发布了2.0版本?就这么点时间改动就很大,那不是很不稳定?

解疑:

V1.5.5版本是拿V1.5版本的源码直接修改的,只是在原来的基本上修正一些sql2000下的应用bug。
实际发布V1.5.5的时候,V2.0已经发布很久了,只是一直做为抢先体验版本存在。

 

版本升级内容

复制代码
1:增加支持Access/Oracle数据库,因此目前支持数据为:sql 2000/sql 2005/access/oracle。

2:内置Aop,可以分离权限/操作日志/异常/或者其它sql执行统计等模块进行独立开发。

3:MDataTable 增加2个附属方法:Bind(控件名称)及ToJson();
 
4:MAction 刚新增加调试信息输出属性:DebugInfo
复制代码

 

 

一:目前配置文件配置选项

1:默认数据库链接[必选]:

复制代码
< add  name ="Conn"  connectionString ="数据库链接字符串"  providerName ="最好写上,不写则从链接字符串里取关键字做分支" />

providerName选项:
sql 2000/sql 2005:System.Data.SqlClient
access:System.Data.OleDb
oracle:System.Data.OracleClient
复制代码

 

2:开启异常日志表配置[可选]:

appSettings节点: < add  key ="IsWriteLog"  value ="true" />  
说明:如果不配置此节点,V1.5版本及以上会默认抛出异常。配置为true后,有异常不抛出。
connectionStrings节点:
< add  name ="LogConn"  connectionString ="Conn" />
说明:如果日志表和Conn默认是同个数据库,可采取共享链接的写法。

 

3:开启Aop功能配置[可选]:

appSettings节点: < add  key ="Aop"  value ="CYQ.Data.Test,CYQ.Data.Test.MyAop" />
说明:CYQ.Data.Test为程序集名称;CYQ.Data.Test.MyAop为带完整名称空间的类名

 

4:配置Oracle自增序列名称[可选]:

appSettings节点: < add  key ="AutoID"  value ="MyAutoID" />
说明:默认序列名称为:AutoID

 

二:using语法使用说明

 

有些网友对using语法情有独钟,这里我说明一下相关的使用:

 

1:using语法简单说明

using(MAction action=new MAction("表")){业务处理} 等同于=> try{ 业务处理} finally{if(action!=null){action.Disponse();}}

 

2:using语法注意点

首先我们要知道,对于using语法,是在业务处理完的最后,才执行Disponse()方法。
因此,如果你的业务处理时间很长,而这些很长的处理逻辑可能跟数据库已没有关系,比如查出数据,然后要根据查出的数据做出很多业务逻辑处理。
那么这种情况下使用using,大括号在哪里结束,就得讲究一下,虽然不影响大局,毕竟滥用也不好。

 

3:MDataTable 新方法Bind语法演示using:

using  (MAction action  =   new  MAction(TableNames.Users))
{
   action.Select().Bind(rptList);
}

几点说明:

1:Select方法查询查询不到数据时,不再返回null,而是返回new MDataTable()的实例。
2:由于保证了Select不会返回null,因此可以使用其Bind方法来直接绑定rptList控件
3:Bind方法支持的控件类型有:GridView/Repeater/DataList/DataGrid/DataGridView

 

三:枚举生成器V2.0版本发布

这里上一张截图,增加支持Access/Oracle生成枚举。

 

截图如下:

 

 四:框架及最近辅助工具下载地址

详见:CYQ.Data 轻量数据层之路 bug反馈、优化建议、最新框架下载

 

结言:

使用本框架进行开发,入门简单,开发效率高,性能优越,更有详尽的API文档,有相关的使用帮助文章、示例文章、更甚有相关的视频教程及辅助工具。

关键还是免费与开源,实在是居家旅行、项目开发、学习研究的必备良品!!!!!!

 

附言:

复制代码
别犹豫了,从你看到此框架的瞬间,加入使用的大军吧,从开始到学会,口述教的话也就仅5分钟,看视频教程,也就10分钟,看文章,顶多就半个多小时。

速学速用:

如果你是学生:用它来开发作品,不仅能提升个人经验值,对将来找工作也是大有帮助。

如果你是企业:用它来开发公司项目,即提高员工开发效率,更能统一开发风格,就算员工流动,新人进来,口述几分钟,也能迅速接手了解整体架构。

如果你是初级开发者:老板整天压着工期,逼着你快速开发交付产品,自己手头写框架又能力用限,网上的其它框架又大又多又难学又难用,咋整?用上此框架,烦脑不再用。

如果你是中级开发者:正在提升阶段,试图自己研发框架,下载源码研究吧,多一份思想也不是什么坏事,还可以进群进行相关讨论,互相提升。

如果你......
复制代码

 

 

最后:祝大家用的放心,用的省心,用的开心,你的鼓励是我最大的动力。

 

 

版权声明:本文原创发表于博客园,作者为路过秋天,原文链接:

http://www.cnblogs.com/cyq1162/archive/2010/09/30/1839336.html

相关文章
|
5月前
|
存储 JSON 关系型数据库
【干货满满】解密 API 数据解析:从 JSON 到数据库存储的完整流程
本文详解电商API开发中JSON数据解析与数据库存储的全流程,涵盖数据提取、清洗、转换及优化策略,结合Python实战代码与主流数据库方案,助开发者构建高效、可靠的数据处理管道。
|
3月前
|
数据采集 关系型数据库 MySQL
python爬取数据存入数据库
Python爬虫结合Scrapy与SQLAlchemy,实现高效数据采集并存入MySQL/PostgreSQL/SQLite。通过ORM映射、连接池优化与批量提交,支持百万级数据高速写入,具备良好的可扩展性与稳定性。
|
3月前
|
人工智能 Java 关系型数据库
使用数据连接池进行数据库操作
使用数据连接池进行数据库操作
130 11
|
4月前
|
存储 数据管理 数据库
数据字典是什么?和数据库、数据仓库有什么关系?
在数据处理中,你是否常困惑于字段含义、指标计算或数据来源?数据字典正是解答这些问题的关键工具,它清晰定义数据的名称、类型、来源、计算方式等,服务于开发者、分析师和数据管理者。本文详解数据字典的定义、组成及其与数据库、数据仓库的关系,助你夯实数据基础。
数据字典是什么?和数据库、数据仓库有什么关系?
|
8月前
|
存储 缓存 数据库
数据库数据删除策略:硬删除vs软删除的最佳实践指南
在项目开发中,“删除”操作常见但方式多样,主要分为硬删除与软删除。硬删除直接从数据库移除数据,操作简单、高效,但不可恢复;适用于临时或敏感数据。软删除通过标记字段保留数据,支持恢复和审计,但增加查询复杂度与数据量;适合需追踪历史或可恢复的场景。两者各有优劣,实际开发中常结合使用以满足不同需求。
759 4
|
4月前
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL数据库的WAL日志与数据写入的过程
PostgreSQL中的WAL(预写日志)是保证数据完整性的关键技术。在数据修改前,系统会先将日志写入WAL,确保宕机时可通过日志恢复数据。它减少了磁盘I/O,提升了性能,并支持手动切换日志文件。WAL文件默认存储在pg_wal目录下,采用16进制命名规则。此外,PostgreSQL提供pg_waldump工具解析日志内容。
417 0
|
6月前
|
存储 SQL Java
数据存储使用文件还是数据库,哪个更合适?
数据库和文件系统各有优劣:数据库读写性能较低、结构 rigid,但具备计算能力和数据一致性保障;文件系统灵活易管理、读写高效,但缺乏计算能力且无法保证一致性。针对仅需高效存储与灵活管理的场景,文件系统更优,但其计算短板可通过开源工具 SPL(Structured Process Language)弥补。SPL 提供独立计算语法及高性能文件格式(如集文件、组表),支持复杂计算与多源混合查询,甚至可替代数据仓库。此外,SPL 易集成、支持热切换,大幅提升开发运维效率,是后数据库时代文件存储的理想补充方案。
|
11月前
|
数据采集 数据库 Python
有哪些方法可以验证用户输入数据的格式是否符合数据库的要求?
有哪些方法可以验证用户输入数据的格式是否符合数据库的要求?
493 75

热门文章

最新文章