本章只学习下ActiveRecord的一些常见的映射配置,比如主键配置、属性配置、字段配置、一对多、多对多等配置,像继承、复合主键自己可参考官网文档,地址:http://docs.castleproject.org/Active%20Record.MainPage.ashx。
一些映射的属性描述可以查看博客http://terrylee.cnblogs.com/archive/2006/04/06/367978.html,这个系列的博客对于ActiveRecord的学习是基于比较老版本的,目前一些方法的调用等不适用于最新版本,但是对于ActiveRecord的属性配置还是可以参考的。
主键配置
[PrimaryKey(PrimaryKeyType.Identity)]
public int Id { get; set; }
PrimaryKey是主键的配置属性,PrimaryKeyType是主键的生成方式,这里是数据库自增型的
(当然官网是不建议使用这种主键类型的)
以下是主键的生成方式(摘自rrylee.cnblogs.com/archive/2006/04/06/367978.html):
名称 |
说明 |
Identity |
对DB2,MySQL, MS SQL Server, Sybase和HypersonicSQL的内置标识字段提供支持,生成自增的整型 |
Sequence |
序列,对DB2,MySQL, PostgreSQL, Oracle的内置标识字段提供支持,生成自增的整型。 |
HiLo |
高低位,使用一个高/低位算法来高效的生成Int64, Int32 或者 Int16类型的标识符。 |
SeqHiLo |
使用序列的高低位,使用一个高/低位算法来高效的生成Int64, Int32 或者Int16类型的标识符,给定一个数据库序列(sequence)的名字。 |
UuidHex |
用一个System.Guid和它的ToString(string format)方法生成字符串类型的标识符。 |
UuidString |
用一个新的System.Guid产生一个byte[] ,把它转换成字符串。 |
Guid |
用一个新的System.Guid 作为标识符。 |
GuidComb |
用Jimmy Nilsso的一个算法产生一个新的System.Guid。 |