浏览 2554 次
锁定老帖子 主题:基于DOTNET的活动记录框架
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-01-09
写过一段时间的DOTNET程序和ROR程序后,受ROR的ActiveRecord框架启发,故此写了DOTNET版本的活动记录框架。具有CRUD、事务、验证器、支持多数据库连接。 先介绍简单的CRUD操作。 建立表结构: create table products( id int primary key identity, name varchar(50), shape varchar(50), amount int, remark varchar(200) )
然后定义类: using EtNet.ActiveRecord; [Table("products")] public class Product : ActiveRecordBase { public Product() { // // TODO: 在此处添加构造函数逻辑 // } [PrimaryKey] public int id { get {return _id;} set {_id = value;} } [Field] public string name { get {return _name;} set {_name = value;} } [Field] public string shape { get {return _shape;} set {_shape = value;} } [Field] public int amount { get {return _amount;} set {_amount = value;} } [Field] public string remark { get {return _remark;} set {_remark = value;} } private int _id; private string _name; private string _shape; private int _amount; private string _remark; }
1、增加记录 Product p = new Product(); p.name = "电脑"; p.shape = "PII"; p.amount = 30; p.Create();
2、修改记录 Product p = (Product)Product.Find(typeof(Product),1); p.shape = "PIII"; p.amount = 23; p.remark = "备用"; p.Update();
3、删除记录 Product p = (Product)Product.Find(typeof(Product),1); p.Destroy();
4、查询记录 Product p = (Product)Product.Find(typeof(Product),1); Console.WriteLine(p.id); Console.WriteLine(p.name); Console.WriteLine(p.shape); Console.WriteLine(p.amount);
其他的功能操作以后再介绍。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-01-11
Castle.ActiveRecord
http://www.castleproject.org/ |
|
返回顶楼 | |
发表时间:2008-01-11
末日黄花,没有看头了。现在流行语言集成查询,不需要这个了。
|
|
返回顶楼 | |
发表时间:2008-01-12
mooniscrazy 写道 末日黄花,没有看头了。现在流行语言集成查询,不需要这个了。 如若真流行开,估计HIBERNATE也该退出舞台了。还需要多少时间,这个不得而知。 |
|
返回顶楼 | |
发表时间:2008-01-12
stworthy 写道 mooniscrazy 写道 末日黄花,没有看头了。现在流行语言集成查询,不需要这个了。 如若真流行开,估计HIBERNATE也该退出舞台了。还需要多少时间,这个不得而知。
我们的两个项目已经在RTM上开始了林Q之旅. 我想这个时间是08年底吧. |
|
返回顶楼 | |
发表时间:2008-01-14
LINQ想要流行开也不是容易的事,毕竟目前ORM还是主流。Castle.ActiveRecord的底层是基于NHIBERNATE,个人觉得太庞杂。
|
|
返回顶楼 | |
发表时间:2008-01-14
linq 是一个通用技术
linq to sql是一个特定实现 linq 也可以用在nhibernate和其它orm之上的,而且已经有了,google一样吧 其实,要真正的实现activerecord模式,还是用动态语言整吧,ironptyhon,ironruby现在都可以 |
|
返回顶楼 | |