Я читал эту запись в блоге:
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);
}
}