NHSubscribersRepository.cs
1.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using ControlPanel.Interfaces.Reposytorys;
using ControlPanel.Models;
using NHibernate;
using NHibernate.Cfg;
using NHibernate.Criterion;
using NHibernate.Tool.hbm2ddl;
using FluentNHibernate.Cfg.Db;
using FluentNHibernate.Automapping;
using ControlPanel.Interfaces.Reposytorys;
namespace ControlPanel.NHInplimentRepository
{
public class NHSubscribersRepository : NHMainRepository<Subscribers>, ISubscribersRepository
{
int ISubscribersRepository.Count()
{
int count = 0;
using (ISession session = GetNHBSession())
{
session.BeginTransaction();
var rowCount = session.CreateCriteria(typeof(Subscribers))
.SetProjection(Projections.RowCount()).FutureValue<Int32>();
try
{
count = rowCount.Value;
}
catch (Exception)
{
}
session.Transaction.Commit();
}
return count;
}
IList<Subscribers> ISubscribersRepository.GetLog(int start, int limit)
{
IList<Subscribers> list;
using (ISession session = GetNHBSession())
{
session.BeginTransaction();
list = session.CreateCriteria(typeof(Subscribers))
.SetFirstResult(start)
.SetMaxResults(limit - start + 1)
.List<Subscribers>();
session.Transaction.Commit();
}
return list;
}
}
}