annotate Agendas/trunk/src/Agendas.NHibernate/SessionScope.cs @ 193:523e3586b1c1

Combinar
author juanjose.montesdeocaarbos
date Wed, 10 Aug 2011 08:21:32 -0300
parents 1deccd6c3cb2
children
rev   line source
179
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
1 using System;
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
2 using NHibernate;
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
3 using NHibernate.Context;
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
4
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
5 namespace Agendas.NHibernate
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
6 {
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
7 public class SessionScope : IDisposable
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
8 {
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
9 private readonly ISessionFactory _sessionFactory;
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
10
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
11 public SessionScope(ISessionFactory sessionFactory)
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
12 {
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
13 _sessionFactory = sessionFactory;
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
14
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
15 var session = _sessionFactory.OpenSession();
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
16 CurrentSessionContext.Bind(session);
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
17 }
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
18
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
19 public void Dispose()
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
20 {
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
21 var session = _sessionFactory.GetCurrentSession();
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
22
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
23 session.Flush();
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
24 session.Close();
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
25 }
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
26 }
1deccd6c3cb2 Aplicando seguridad x roles en sitio web
nelopauselli
parents:
diff changeset
27 }