技术开发 频道

Castle ActiveRecord学习实践(1):快速入门指南


【IT168技术文档】

  摘要:最近几天有时间看了一下Castle,原来它的功能是如此的强大,从数据访问框架到IOC容器,再到WEB框架,基本包括了整个开发过程中的所有东西,看来得好好学习研究一下了,并且打算把自己学习过程的一些东西记录下来。先从ActiveRecord开始吧,ActiveRecord提供的简洁的O/R映射给我留下了很深的印象,本文将通过一个简单对象的CRUD操作来带你快速走进Castle ActiveRecord。

  主要内容

  1.概述

  2.准备相关的数据表

  3.编写User实体类

  4.构建配置信息

  5.开始CRUD操作

  6.使用ActiveRecord Generator生成实体类代码



  一.概述

  如果你用过NHibernate,一定会对在NHibernate中编写.hbm.xml文件印象深刻,我也是。而在Castle ActiveRecord中,我们不用再为编写繁冗复杂的映射文件而头疼,ActiveRecord是Castle中提供的一个数据访问框架,它在底层封装了NHibernate的操作,使用特性来代替映射文件,它提供的简洁的O/R映射会让你惊叹原来实现持久化数据层是那么简单。下面我们通过一个简单对象的CRUD操作来快速进入Castle ActiveRecord。



  二.准备相关的数据表

  假定数据库中有这样一张用户表,用来保存用户的信息,如下
CREATE TABLE [dbo].[Users] ( [LogonID] [int] IDENTITY (1, 1) NOT NULL , [LogonName] [varchar] (40) COLLATE Chinese_PRC_CI_AS NULL , [Password] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL , [EmailAddress] [varchar] (40) COLLATE Chinese_PRC_CI_AS NULL , [LastLogon] [datetime] NULL ) ON [PRIMARY] GO
  三.编写User实体类

  首先我们新建一个User类并让它继承于ActiveRecordBase类
public class User : ActiveRecordBase { // }
  为User类添加特性,其实就是告诉ActiveRecord,User类所对应的数据库中的数据表名为Users
[ActiveRecord("Users")] public class User : ActiveRecordBase { // }
  下面我们的工作就是为实体类添加属性
[ActiveRecord("Users")] public class User : ActiveRecordBase { private int _id; private string _name; private string _password; private string _emailAddress; private DateTime _lastLogon; [PrimaryKey(PrimaryKeyType.Identity, "LogonID")] public int Id { get { return _id; } set { _id = value; } } [Property("LogonName")] public string Name { get { return _name; } set { _name = value; } } [Property("Password")] public string Password { get { return _password; } set { _password = value; } } [Property("EmailAddress")] public string Address { get { return _emailAddress; } set { _emailAddress = value; } } [Property("LastLogon")] public DateTime LastLogon { get { return _lastLogon; } set {_lastLogon = value; } } }
0
相关文章