Как я могу использовать Expression<T> в NHibernate?
Я прочитал очень хороший пост в блоге Роба Конери Crazy Talk: Уменьшение трения ORM
Как я могу обобщить этот интерфейс, чтобы я мог реализовать его с помощью NHibernate?
using System;
using System.Collections;
using System.Linq;
using System.Linq.Expressions;
public interface IRepository<T>
{
IQueryable<T> GetAll();
PagedList<T> GetPaged(int pageIndex, int pageSize);
IQueryable<T> Find(Expression<Func<T, bool>> expression);
void Save(T item);
void Delete(T item);
}
Я хочу использовать Expression<Func<T, bool>>
выражение в NHibernate. Любая подсказка?
2 ответа
Решение
Посмотрите на LINQ для NHibernate. Кайл Бэйли имеет отличный обзор этого
Вам нужно будет пройтись по дереву выражений и построить свои критерии.