public int GetPostsCount(string ticket, TransitPostQueryOptions options) { using (DBlog.Data.Hibernate.Session.OpenConnection(GetNewConnection())) { ISession session = DBlog.Data.Hibernate.Session.Current; CountQuery query = new CountQuery(session, typeof(DBlog.Data.Post), "Post"); if (options != null) { options.Apply(query); } if (options != null) options.Apply(query); return query.Execute<int>(); } }
public List<TransitPost> GetPosts(string ticket, TransitPostQueryOptions options) { using (DBlog.Data.Hibernate.Session.OpenConnection(GetNewConnection())) { ISession session = DBlog.Data.Hibernate.Session.Current; StringCriteria criteria = new StringCriteria(session, "Post", typeof(Post)); if (options != null) { options.Apply(criteria); } IQuery sqlquery = criteria.CreateQuery(); if (options != null) { options.Apply(sqlquery); } IList list = sqlquery.List(); List<TransitPost> result = new List<TransitPost>(list.Count); foreach (Post obj in list) { result.Add(new TransitPost(session, obj, ticket)); } return result; } }