随笔分类 - X组件
摘要:对于一个框架来说,仅有基本的CURD不行,NewLife.XCode同时还提供了一个非常宽松的方式来使用高级查询,以满足各种复杂的查询需求。
(本文同样适用于其它任何数据访问框架)
初衷是跟大家交流技术,让大家都掌握这些应用开发经验,而不是让大家都来用XCode!有了这些东西,你也可以做出来自己的XCode!
阅读全文
摘要:虽然是充血模型,虽然是强类型,XCode同样支持遍历任何数据库结构,并以强类型(相对于DataSet等字典访问)方式读取数据。 要遍历数据库结构是很容易的事情,绝大多数Orm都支持。 但是在没有实体类的情况下以强类型方式读取数据,就稍微有些复杂。XCode的原理是为每张表动态创建继承自Entity<>的实体类,然后通过接口来操作实体类。 代码中有了快速反射,虽然没有性能损耗,但是用起来挺别扭的,这...
阅读全文
摘要:上周发布了《改进版CodeTimer及XCode性能测试》,展示了NewLife.XCode在性能上的表现。这次的主角是一位个人站长使用NewLife.XCode做的系统(采集+整理+网站),日入173刀。
阅读全文
摘要:前天晚上,在一个页面上拖了一个ObjectDataSource,配置数据源时发现选择业务对象的列表没有列出当前项目的实体类,甚至连NewLife.CommonEntity中的实体类也没有列出来。按以往管理,重新编译、删除引用、更新DLL……所有操作都试了一遍,还是不行。这就奇了怪了,虽然这几年来一直碰到这个问题,尽管不知道原因,但是从来没试过解决不了的。觉得也许是我安装了vs2010sp1的原因...
阅读全文
摘要:网上很多资料说到静态构造函数,但是很少提到与线程相关的,这个例子实际上是想测试一下静态构造函数的多线程冲突。这个问题让群里的高手纠结了一整天!(先看看大家讨论,后面再公布答案)从讨论的结果看,很多人对于多线程环境下静态构造函数的执行顺序含糊不清,你呢?
阅读全文
摘要:在测试XCode性能的时候,发现每次执行测试程序得到的执行时间差距实在太大,于是采用了老赵的CodeTimer来计算线程时间,后来因为测试成为稍微有点复杂,在使用匿名委托时会有参数的“打包”过程,于是改进了CodeTimer,测试功能代码通过实现一个继承自CodeTimer的类来实现,避免每次迭代时参数“打包”的过程。
阅读全文
摘要:忙忙碌碌有一年!做了很多东西,到头来,似乎又什么都没有做。人继续变老,程序继续改进。
XCode v3.5源码(及相关组件、例子、代码生成器等)目前存放于CodePlex,地址:http://xcode.codeplex.com/
阅读全文
摘要:网络上现有的许许多多模版引擎,要么采用标签替换,要么自创模版语言,这些都增加了使用者的学习难度。XTemplate使用C#作为模版语言,这个世界安静了!
阅读全文
摘要:在开发某些需要跟第三方平台交互的项目时,往往需要解析或者构造符合对方协议要求的数据格式,该操作在.Net中有个很漂亮的名字——序列化! 在实际使用中,XML序列化用得比较多,二进制序列化也不错,只是可...
阅读全文
摘要:ORM很多,但是使用充血模型(胀血模型)的很少,XCode是我们团队设计的一个充血模型ORM,这里列出它的主要功能!
本文的主旨在于对充血模型ORM的技术模型探讨,不限于具体ORM!
阅读全文
摘要:有了前面的《动手》,基本上可以进行开发了。本篇我们来试试XCode的基本功功力如何,测试在单表一千万业务数据的环境下查询的速度,添删改等没什么可测试的。其实应该说是XCode开发模式的功力,XCode...
阅读全文
摘要:本篇才真正是XCode教程第一篇。《速览》是为了以最简洁的语言最短小的篇幅去吸引开发者;《简介》则是对XCode组件和XCode开发模式的一个整体介绍,让开发者从宏观的角度去理解XCode;《共舞》把XCode提到了一个新的高度,让开发者感受到它的贵族血统!
阅读全文
摘要:本文以ORM组件XCode作为例子,详细讲解实体类如何与ObjectDataSource的高级功能配合使用,重点是分页和排序!
阅读全文
摘要:XCode是一个轻量级的ORM组件(对象与关系数据库映射),提供以面向对象的方式操作数据库的功能,能够解决90%以上的数据库操作场景。 做为X系列组件最重要的一员,XCode秉承了简单实用的特点,力求以最简单的做法,解决最普遍的问题。 XCode最大的“缺点”就是“不支持”多表查询!为何不支持要加双引号?那是因为XCode实际上支持多表查询,只是用起来非常复杂,也不容易讲清楚,会严重影响基本功...
阅读全文
摘要:啥也不说,上图: 这是最基本的增删改查代码! 符合X系列组件的一贯作风,不求万能,只求简单实用! 不支持多表查询,所以不是万能的,仅仅支持单表,所以是简单的,增删改查都得到了直接支持,完全能解决80%以上的场景,所以是实用的。 UserMember类由代码生成器生成,每张表对应一个类,每个表字段对应类属性,然后加上增删改(Insert、Update、Delete、Save=Insert/Updat...
阅读全文
摘要:这里以日志组件XLog作为开头,不再以专门的概要或者目录说明开始,体现新生命开发团队组件体系的基本思想——追求实用,一切从简! 我写文档资料向来行文自如,没有统一的格式。基本上标题是粗体二号居中,正文是小四,段落首行缩进2字符,行间距1.5倍。我比较喜欢上彩色的代码,因为那样阅读起来非常舒服,有时候干脆直接用代码截图替代。 就让我们从日志组件XLog开始吧! XLog是组件体系里面最最简单的一个组...
阅读全文