【发布时间】:2010-11-20 11:56:19
【问题描述】:
例如,我有两个类:Foo 和 Bar。这些类映射到一些表。
目前,我对每个类都有静态方法:添加、更新、删除、获取。
E.g.:
public class Foo
{
private Guid _id;
private string _someProperty;
static Foo Get(Guid id);
static void Add(Foo foo);
static void Update(Foo foo);
static void Delete(Foo foo);
}
所以,当我需要对我的对象做某事时,我会这样说:
Foo foo = Foo.Get(id);
Foo newfoo = new Foo();
Foo.Add(newfoo);
Foo.Update(newfoo);
Foo.Delete(newfoo);
这是一个好方法吗? 如果不是,我应该使用什么方法来访问数据?
谢谢
【问题讨论】:
-
我同意@kitsune 关于使用存储库的观点。但是,如果您想要活动记录方法,您可以使用 Castle Active Record,并在后台使用 nhibernate 进行数据访问。我已经用过几次了,非常适合小型项目。
标签: c# nhibernate data-access-layer static-methods