Hola a todos
Estoy dando mis primeros pasos con nhibernate y me surge la siguiente duda.
He visto implementaciones de repositorios que implementan (perdón por la
redundancia) el interfaz IQueryable y hacen uso del nhlinq.
Mi pregunta es ésta:
Dentro de las buenas prácticas se recomienda que hay que encapsular todas
las acciones dentro de una transacción,con operaciones de borrado y
actualización es evidente como realizar esta encapsulación., pero ¿Cómo
hacerlo cuando se usa linq para consultas?
Esta es la implementación de mi repositorio de solo lectura,
public class Repository<T> : IRepository<T> where T : IEntity
{
private readonly ISessionFactory _sessionFactory;
protected Repository(ISessionFactory sessionFactory)
{
_sessionFactory = sessionFactory;
}
public Expression Expression
{
get
{
return _sessionFactory.GetCurrentSession().Linq<T>().Expression;
}
}
public Type ElementType
{
get { return
_sessionFactory.GetCurrentSession().Linq<T>().ElementType; }
}
public IQueryProvider Provider
{
get { return
_sessionFactory.GetCurrentSession().Linq<T>().Provider; }
}
public IEnumerator<T> GetEnumerator()
{
return
_sessionFactory.GetCurrentSession().Linq<T>().GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
}
Gracias por anticipado
--
Saludos
José M. Pardo
--
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano