예제 #1
0
        public PaginatedList <NotificationDetails> GetPaginatedNotificationsDetails(NotificationQuery query, bool includeMessages = true)
        {
            var innerQuery = BuildGetNotificationDetailsDbQuery(query, includeMessages);
            var orderBy    = new Dictionary <string, Orm.OrderType>
            {
                { "Notification_" + Notification.CREATED_FIELD, Orm.OrderType.Desc },
                { "Notification_" + Notification.ID_FIELD, Orm.OrderType.Desc }
            };
            var q = Orm.PaginationSelect(innerQuery, orderBy, query.Start, query.Count);

            return(ReadPaginatedResult(q, query.Start, query.Count, ReadListNotifcationDetails));
        }
예제 #2
0
        public PaginatedList <Application> GetPaginatedApplications(ApplicationQuery query)
        {
            var q = BuildGetApplicationsQuery(query);

            q = Orm.PaginationSelect(q, query.OrderBy, query.OrderDesc ? Orm.OrderType.Desc : Orm.OrderType.Asc, query.Start, query.Count);
            var paginatedApps = ReadPaginatedResult(q, query.Start, query.Count, r =>
            {
                var res = new List <Application>();
                while (r.Read())
                {
                    res.Add(ReadApplication(r));
                }
                return(res);
            });

            return(PreparePicturesData(paginatedApps) as PaginatedList <Application>);
        }