public virtual IList <T> FindAll(NHibernateRepositorySortList sorts, int?pageIndex, int?pageSize, out int totalItems)
        {
            var criteria = IsStatelessSession
                                ? StatelessSession.CreateCriteria(typeof(T))
                                : Session.CreateCriteria(typeof(T));

            AddSortOrders(criteria, sorts);
            return(GetList(criteria, pageIndex, pageSize, out totalItems));
        }
        public virtual T FindFirst(ICriteria criteria, NHibernateRepositorySortList sorts)
        {
            AddSortOrders(criteria, sorts);

            var totalItems = 0;
            var list       = GetList(criteria, 0, 1, out totalItems);

            return(list.Count > 0 ? list[0] : default(T));
        }
        public virtual IList <T> FindByProperty(string property, object value, NHibernateRepositorySortList sorts, int?pageIndex, int?pageSize, out int totalItems)
        {
            var criteria = IsStatelessSession
                                ? StatelessSession.CreateCriteria(typeof(T))
                                : Session.CreateCriteria(typeof(T));

            criteria.Add(NHibernateCriterion.Restrictions.Eq(property, value));

            AddSortOrders(criteria, sorts);
            return(GetList(criteria, pageIndex, pageSize, out totalItems));
        }
Ejemplo n.º 4
0
        public void find_all_with_sorts()
        {
            var sortNameAsc = new NHibernateRepositorySort("Name", NHibernateRepositorySortDirection.Asc);
            var sorts       = new NHibernateRepositorySortList {
                sortNameAsc
            };

            var totalItems = 0;
            var list       = _mediaTypeRepo.FindAll(sorts, out totalItems);

            Assert.IsNotEmpty(list);
            Assert.AreEqual(5, totalItems);
            Assert.AreEqual("AAC audio file", list[0].Name);
        }
 private void AddSortOrders(ICriteria criteria, NHibernateRepositorySortList sorts)
 {
     if (criteria != null)
     {
         if (sorts != null && sorts.Count > 0)
         {
             foreach (var sort in sorts)
             {
                 var order = GetSortOrder(sort);
                 if (order != null)
                 {
                     criteria.AddOrder(order);
                 }
             }
         }
     }
 }
Ejemplo n.º 6
0
        public void find_first_with_sorts()
        {
            var criteria = _invoiceRepo.Session.CreateCriteria <Invoice>();

            criteria.Add(Restrictions.Eq("BillingCountry", "Germany"));

            var sortInvoiceDateDesc = new NHibernateRepositorySort("InvoiceDate", NHibernateRepositorySortDirection.Desc);
            var sorts = new NHibernateRepositorySortList {
                sortInvoiceDateDesc
            };

            var invoice = _invoiceRepo.FindFirst(criteria, sorts);

            Assert.IsNotNull(invoice);
            Assert.AreEqual("Germany", invoice.BillingCountry);
            Assert.AreEqual(5.94D, invoice.Total);
        }
Ejemplo n.º 7
0
        public void find_with_sorts()
        {
            var criteria = _invoiceLineRepo.Session.CreateCriteria <InvoiceLine>();

            criteria.Add(Restrictions.Eq("InvoiceId", 11));

            var sortTrackIdDesc = new NHibernateRepositorySort("TrackId", NHibernateRepositorySortDirection.Desc);
            var sorts           = new NHibernateRepositorySortList {
                sortTrackIdDesc
            };

            var totalItems = 0;
            var list       = _invoiceLineRepo.Find(criteria, sorts, out totalItems);

            Assert.IsNotEmpty(list);
            Assert.AreEqual(9, totalItems);
            Assert.AreEqual(322, list[0].TrackId);
        }
Ejemplo n.º 8
0
        public void find_by_property_with_sorts()
        {
            var sortNameAsc = new NHibernateRepositorySort("Name", NHibernateRepositorySortDirection.Asc);
            var sorts       = new NHibernateRepositorySortList {
                sortNameAsc
            };

            var totalItems = 0;
            var list       = _trackRepo.FindByProperty("Composer", "Foo Fighters", sorts, out totalItems);

            Assert.IsNotEmpty(list);
            Assert.AreEqual(11, totalItems);

            foreach (var track in list)
            {
                Assert.AreEqual("Foo Fighters", track.Composer);
            }

            Assert.AreEqual("All My Life", list[0].Name);
        }
Ejemplo n.º 9
0
        public void find_with_sort_and_paging()
        {
            var criteria = _invoiceLineRepo.Session.CreateCriteria <InvoiceLine>();

            criteria.Add(Restrictions.Eq("InvoiceId", 12));

            var sortTrackIdAsc = new NHibernateRepositorySort("TrackId", NHibernateRepositorySortDirection.Asc);
            var sorts          = new NHibernateRepositorySortList {
                sortTrackIdAsc
            };

            var totalItems = 0;
            var list       = _invoiceLineRepo.Find(criteria, sorts, 0, 5, out totalItems);

            Assert.IsNotEmpty(list);
            Assert.AreEqual(14, totalItems);
            Assert.AreEqual(5, list.Count);
            Assert.AreEqual(331, list[0].TrackId);
            Assert.AreEqual(340, list[1].TrackId);
            Assert.AreEqual(349, list[2].TrackId);
            Assert.AreEqual(358, list[3].TrackId);
            Assert.AreEqual(367, list[4].TrackId);
        }
 public virtual IList <T> FindByProperty(string property, object value, NHibernateRepositorySortList sorts, out int totalItems)
 {
     return(FindByProperty(property, value, sorts, null, null, out totalItems));
 }
 public virtual IList <T> FindAll(NHibernateRepositorySortList sorts, out int totalItems)
 {
     return(FindAll(sorts, null, null, out totalItems));
 }
 public virtual IList <T> Find(ICriteria criteria, NHibernateRepositorySortList sorts, int?pageIndex, int?pageSize, out int totalItems)
 {
     AddSortOrders(criteria, sorts);
     return(GetList(criteria, pageIndex, pageSize, out totalItems));
 }
 public virtual IList <T> Find(ICriteria criteria, NHibernateRepositorySortList sorts, out int totalItems)
 {
     return(Find(criteria, sorts, null, null, out totalItems));
 }