新生命开发团队

我不相信神话,我只相信汗水!我不相信命运,我只相信双手! QQ群:1600800
posts - 55, comments - 812, trackbacks - 2, articles - 1
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

公告

X系列组件

摘要: 自从发布了一篇博客Oracle免客户端For .Net(增加分析Devart和DataDirect)后,非常非常多的同学前来问各种Oracle客户端运行时安装配置的问题,严重影响了我们团队的正常工...阅读全文

posted @ 2012-05-28 10:58 大石头 阅读(2934) | 评论 (15) 编辑 |

摘要: 用法: ? 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 DAL.AddConnStr("xxgk", "Data Source=192.168.1.21;Initial Catalog=信息公开;user id=sa;password=Pass@word", null, "mssql"); var dal = DAL.Create...阅读全文

posted @ 2012-05-10 10:19 大石头 阅读(156) | 评论 (2) 编辑 |

摘要: 与其它ORM框架相比,XCode拥有最强的多数据库正向反向工程,暂时还没有发现能在这点上超于XCode的,哈哈!但是,XCode的多数据库反向工程,也是有代价的,不同数据库的数据类型相差十万八千里,我们不可能完全支持。所以,我们只做了常见的一些数据类型支持,但是这些已经足以满足99%的要求。最佳数据类型如下:1,整型。Int32是标准配置,这个必须有的。在Oracle,整型就是小数为0的Nume...阅读全文

posted @ 2012-05-10 10:17 大石头 阅读(409) | 评论 (3) 编辑 |

摘要: 开始进入工业自动化,买的工控机带有GPIO接口,可用于直接控制继电器。 从厂家拿到接口手册一看,居然是汇编直接操作端口,基本上是IN/OUT指令了。接口很简单,计算位移,读取;计算位移,写入。 这种接...阅读全文

posted @ 2012-05-10 09:36 大石头 阅读(4551) | 评论 (58) 编辑 |

摘要: 目的:测试XCode v8.0的正常反向功能。 正向工程:从数据库读取架构信息,生成实体类。 反向工程:根据实体类的特性构造架构信息,反向生成数据库或者修改数据库。 准备工作: 1,自备数据库实例,最好是自己的数据库,为了测试各种数据库的各种字段能否被识别为正确的.Net类型(正向工程),同时也测试.Net类型能否正确转为对应的数据库类型(反向工程)。(支持MSSQL、Access、SqlCe、S...阅读全文

posted @ 2011-09-08 10:52 大石头 阅读(633) | 评论 (11) 编辑 |

摘要: 废话不多说,直接上代码: // try之前开始事务 Meta.BeginTrans(); try{ // do something // 强烈建议,尽可能做到只有一次提交事务,以免混乱 Meta.Commit(); } catch{ // 出错了,需要回滚事务 Meta.Rollback(); // 继续向外抛出异常 throw; } XCode还支持多级事务,实际上,除了第一级事务是真实的事...阅读全文

posted @ 2011-09-01 11:53 大石头 阅读(431) | 评论 (2) 编辑 |

摘要: 对于一个框架来说,仅有基本的CURD不行,NewLife.XCode同时还提供了一个非常宽松的方式来使用高级查询,以满足各种复杂的查询需求。 (本文同样适用于其它任何数据访问框架) 初衷是跟大家交流技术,让大家都掌握这些应用开发经验,而不是让大家都来用XCode!有了这些东西,你也可以做出来自己的XCode!阅读全文

posted @ 2011-08-16 12:54 大石头 阅读(2102) | 评论 (16) 编辑 |

摘要: 虽然是充血模型,虽然是强类型,XCode同样支持遍历任何数据库结构,并以强类型(相对于DataSet等字典访问)方式读取数据。 要遍历数据库结构是很容易的事情,绝大多数Orm都支持。 但是在没有实体类的情况下以强类型方式读取数据,就稍微有些复杂。XCode的原理是为每张表动态创建继承自Entity<>的实体类,然后通过接口来操作实体类。 代码中有了快速反射,虽然没有性能损耗,但是用起来挺别扭的,这...阅读全文

posted @ 2011-04-12 15:47 大石头 阅读(1027) | 评论 (2) 编辑 |

摘要: 上周发布了《改进版CodeTimer及XCode性能测试》,展示了NewLife.XCode在性能上的表现。这次的主角是一位个人站长使用NewLife.XCode做的系统(采集+整理+网站),日入173刀。阅读全文

posted @ 2011-03-21 10:49 大石头 阅读(2708) | 评论 (22) 编辑 |

摘要: 前天晚上,在一个页面上拖了一个ObjectDataSource,配置数据源时发现选择业务对象的列表没有列出当前项目的实体类,甚至连NewLife.CommonEntity中的实体类也没有列出来。按以往管理,重新编译、删除引用、更新DLL……所有操作都试了一遍,还是不行。这就奇了怪了,虽然这几年来一直碰到这个问题,尽管不知道原因,但是从来没试过解决不了的。觉得也许是我安装了vs2010sp1的原因...阅读全文

posted @ 2011-03-18 17:48 大石头 阅读(490) | 评论 (0) 编辑 |

摘要: 网上很多资料说到静态构造函数,但是很少提到与线程相关的,这个例子实际上是想测试一下静态构造函数的多线程冲突。这个问题让群里的高手纠结了一整天!(先看看大家讨论,后面再公布答案)从讨论的结果看,很多人对于多线程环境下静态构造函数的执行顺序含糊不清,你呢?阅读全文

posted @ 2011-03-15 21:23 大石头 阅读(2419) | 评论 (27) 编辑 |

摘要: 在测试XCode性能的时候,发现每次执行测试程序得到的执行时间差距实在太大,于是采用了老赵的CodeTimer来计算线程时间,后来因为测试成为稍微有点复杂,在使用匿名委托时会有参数的“打包”过程,于是改进了CodeTimer,测试功能代码通过实现一个继承自CodeTimer的类来实现,避免每次迭代时参数“打包”的过程。阅读全文

posted @ 2011-03-11 15:45 大石头 阅读(2432) | 评论 (11) 编辑 |

摘要: 忙忙碌碌有一年!做了很多东西,到头来,似乎又什么都没有做。人继续变老,程序继续改进。 XCode v3.5源码(及相关组件、例子、代码生成器等)目前存放于CodePlex,地址:http://xcode.codeplex.com/阅读全文

posted @ 2010-12-24 10:07 大石头 阅读(4007) | 评论 (41) 编辑 |

摘要: 网络上现有的许许多多模版引擎,要么采用标签替换,要么自创模版语言,这些都增加了使用者的学习难度。XTemplate使用C#作为模版语言,这个世界安静了!阅读全文

posted @ 2010-11-10 11:23 大石头 阅读(4885) | 评论 (40) 编辑 |

摘要: 在开发某些需要跟第三方平台交互的项目时,往往需要解析或者构造符合对方协议要求的数据格式,该操作在.Net中有个很漂亮的名字——序列化! 在实际使用中,XML序列化用得比较多,二进制序列化也不错,只是可...阅读全文

posted @ 2010-09-29 18:26 大石头 阅读(1574) | 评论 (11) 编辑 |

摘要: ORM很多,但是使用充血模型(胀血模型)的很少,XCode是我们团队设计的一个充血模型ORM,这里列出它的主要功能! 本文的主旨在于对充血模型ORM的技术模型探讨,不限于具体ORM!阅读全文

posted @ 2010-09-25 09:21 大石头 阅读(4716) | 评论 (60) 编辑 |

摘要: 有了前面的《动手》,基本上可以进行开发了。本篇我们来试试XCode的基本功功力如何,测试在单表一千万业务数据的环境下查询的速度,添删改等没什么可测试的。其实应该说是XCode开发模式的功力,XCode...阅读全文

posted @ 2010-09-15 23:28 大石头 阅读(3615) | 评论 (25) 编辑 |

摘要: 本篇才真正是XCode教程第一篇。《速览》是为了以最简洁的语言最短小的篇幅去吸引开发者;《简介》则是对XCode组件和XCode开发模式的一个整体介绍,让开发者从宏观的角度去理解XCode;《共舞》把XCode提到了一个新的高度,让开发者感受到它的贵族血统!阅读全文

posted @ 2010-09-15 07:42 大石头 阅读(1372) | 评论 (6) 编辑 |

摘要: 本文以ORM组件XCode作为例子,详细讲解实体类如何与ObjectDataSource的高级功能配合使用,重点是分页和排序!阅读全文

posted @ 2010-09-13 01:39 大石头 阅读(2132) | 评论 (6) 编辑 |

摘要: XCode是一个轻量级的ORM组件(对象与关系数据库映射),提供以面向对象的方式操作数据库的功能,能够解决90%以上的数据库操作场景。 做为X系列组件最重要的一员,XCode秉承了简单实用的特点,力求以最简单的做法,解决最普遍的问题。 XCode最大的“缺点”就是“不支持”多表查询!为何不支持要加双引号?那是因为XCode实际上支持多表查询,只是用起来非常复杂,也不容易讲清楚,会严重影响基本功...阅读全文

posted @ 2010-09-13 01:27 大石头 阅读(1610) | 评论 (2) 编辑 |

摘要: 啥也不说,上图: 这是最基本的增删改查代码! 符合X系列组件的一贯作风,不求万能,只求简单实用! 不支持多表查询,所以不是万能的,仅仅支持单表,所以是简单的,增删改查都得到了直接支持,完全能解决80%以上的场景,所以是实用的。 UserMember类由代码生成器生成,每张表对应一个类,每个表字段对应类属性,然后加上增删改(Insert、Update、Delete、Save=Insert/Updat...阅读全文

posted @ 2010-09-12 12:11 大石头 阅读(1657) | 评论 (13) 编辑 |

摘要: 这里以日志组件XLog作为开头,不再以专门的概要或者目录说明开始,体现新生命开发团队组件体系的基本思想——追求实用,一切从简! 我写文档资料向来行文自如,没有统一的格式。基本上标题是粗体二号居中,正文是小四,段落首行缩进2字符,行间距1.5倍。我比较喜欢上彩色的代码,因为那样阅读起来非常舒服,有时候干脆直接用代码截图替代。 就让我们从日志组件XLog开始吧! XLog是组件体系里面最最简单的一个组...阅读全文

posted @ 2010-09-12 11:28 大石头 阅读(1375) | 评论 (3) 编辑 |