예제 #1
0
        public async Task <IHttpActionResult> Get([FromUri] JournalEntrySearchOptions options)
        {
            var list = db.JournalEntries.Select(s => s);

            list = SearchInternal(list, options);
            return(await Page(db.JournalEntries, options.Page.Value));
        }
예제 #2
0
 private IQueryable <JournalEntry> SearchInternal(IQueryable <JournalEntry> list, JournalEntrySearchOptions opt)
 {
     if (!String.IsNullOrEmpty(opt.Search))
     {
         list = Filter(list, opt.Search, opt.DeepSearch);
     }
     if (!String.IsNullOrEmpty(opt.entityname))
     {
         list = list.Where(p => p.EntityName == opt.entityname);
     }
     if (opt.recordid.HasValue)
     {
         list = list.Where(p => p.RecordId == opt.recordid);
     }
     if (!String.IsNullOrEmpty(opt.propertyname))
     {
         list = list.Where(p => p.PropertyName == opt.propertyname);
     }
     if (!String.IsNullOrEmpty(opt.Order))
     {
         list = Sort(list, opt.Order, opt.Ascending.Value);
     }
     else
     {
         list = list.OrderByDescending(c => c.Id);
     }
     return(list);
 }