最近有很多原Socut.data.dll 的使用者问到:" ADOKeycap 比 Socut.data.dll 优越吗,优越在什么地方? "
就本人对Socut.data.dll v3.1目前的了解, ADOKeycap 比Socut.data.dll 优越在以下之处:
1. 使用基于基类的提供程序模型构架
ADOKeycap 使用ADO.net 2.0 新增的基于基类的提供程序模型(System.Data.Common命名空间),利用ADO.net 2.0 提供的抽象基类(DbParameter ,DbCommand 等)以及ADO.net 其他数据库实体类(OleDbConnection ,SqlParameter 等)完成所有工作,其架构符合OO特性,复用性,扩展性,维护性较佳,由于架构复用了.net 的代码,组件一共只有200行代码.
Socut.data.dll 并未使用ADO.net 2.0 提供的这一特性,具体架构无从得知.
2.支持众多数据库
Socut.data.dll 只支持 Access 和 SQL Server 的操作与互转.
ADOKeycap 对.net 支持的数据库均可操作和相互转换(如Oracle ,SQL Server ,Access ,DB , VF 等)
注:因为ADOKeycap 的架构使用了ADO.net 2.0 中的抽象基类,自动获得了这一特性.
3.Socut.data.dll 甚至无法对 设有密码的Access数据库进行操作.
4.储存参数功能优越
Socut.data.dll 只支持Input类型的储存参数,并且不支持任何对储存参数的操作.使用字符串数组传入参数,只能传递字符串类型(或能转换为字符串的类型)作为参数. 如果您打算传递一个图片到数据库,那么Socut.data.dll 无法胜任.
ADOKeycap支持所有类型的储存参数(如 Output,Return,InputOutput等) 和所有参数操作.可以传递任何数据库支持的数据类型做为参数.
注:因为ADOKeycap 的架构使用ADO.net 2.0 中的DbParameter 抽象基类复用了.net 的代码,没有写一行实现代码就获得了这些功能.
5.读取器优越
Socut.data.dll 将数据读取器封装为一个Socut.Data.Reader类. 其功能实在简陋,只有7个方法,而且不支持根据字段索引读取. 导致无法遍历字段 .如 DataReader[3].ToString(); 在Socut.data.dll 中是不支持的.
ADOKeycap 的数据读取器使用了ADO.net 2.0 的 DbDataReader 抽象基类,支持.net DataReader 的全部40个方法和属性.
注:因为ADOKeycap 的架构使用ADO.net 2.0 中的DbDataReader , 复用了.net 的代码,没有为DataReader写一行代码就获得了这些功能.
6.性能优越
ADOKeycap 的架构使得其封装后的性能损耗降到最低. 大部分的功能都复用.net 架构中的类完成,几乎和直接使用.net操作数据库一样.如 DbParameter , DataReader 直接使用ADO.net 2.0 中的基类,真正零性能能损耗,无功能缩水.
7.开源!
Socut.data.dll 作者声明组件永不开源. 且源代码收费.
ADOKeycap 永久开源. 任何人都可以方便集成它到您的系统 , 在热心朋友的帮助下,已经有更多更好的设计和功能被发现,将使ADOKeycap愈发强大.
另:
对于有部分Socut.data.dll 的 Fans 怀疑ADOKeycap 抄袭Socut.data.dll . 我想公道自在人心.ADOKeycap 要比 Socut.data.dll 有很多进步之处,而架构又截然不同, 谈何的抄袭呢?
对于说ADOKeycap抄袭的人我想说:
如若ADOKeycap 有任何对Socut.data.dll 的抄袭之处,那么本人愿意承担任何法律责任,同时如若您有证据证明ADOKeycap 有抄袭 Socut.data.dll . 本人建议您使用法律保护您的劳动成果,立即进行起诉!而不只发表不负责的言论!