如何使用linq2sql模仿nhibernate存储库模式?

时间:2009-06-19 21:39:16

标签: c# nhibernate linq-to-sql

我正在阅读这篇博文:

  

https://web.archive.org/web/20110503184234/http://blogs.hibernatingrhinos.com/nhibernate/archive/2008/10/08/the-repository-pattern.aspx

我喜欢他们如何为您创建一个包含所有基本CRUD查询的界面,并且您可以在所有实体/表中使用它。

这也可以用linqtosql完成吗?


代码:

public class Repository<T> : IRepository<T>
{
    public ISession Session { get { return UnitOfWork.CurrentSession; } }
    public T GetById(int id)
    {
        return Session.Get<T>(id);
    }

    public ICollection<T> FindAll()
    {
        return Session.CreateCriteria(typeof(T)).List<T>();
    }

    public void Add(T product)
    {
        Session.Save(product);
    }

    public void Remove(T product)
    {
        Session.Delete(product);
    }

}

1 个答案:

答案 0 :(得分:0)

是的,有several尝试使用LINQ to SQL实现此模式。