//public static async Task<List<FAQ>> GetFAQsSearch(string search) //{ // var faqs = await AG.GetAllFAQs(); // var fq = new List<FAQ> { }; // await Task.Run(() => // { // foreach (FAQ f in faqs) // { // if (f.Question.MySearch(search, StringComparison.CurrentCultureIgnoreCase)) // fq.Add(f); // // primitive variant // // var lowG = g.GroupName.ToLower(); // // var lowS = search.ToLower(); // // if (lowG.Contains(lowS)) // // gn.Add(g); // }; // }); // return fq; //} //pagination public static async Task <Page <FAQ> > GetFAQsSearch(int p) { // page size = 2 int pagesize = 2; var All = await AG.GetAllFAQs(); IEnumerable <FAQ> ThisPage = new List <FAQ> { }; await Task.Run(() => { ThisPage = All.Skip((p - 1) * pagesize).Take(pagesize); }); var ToReturn = new Page <FAQ> { Pageinfo = ThisPage, PageNumber = p, PageCount = (All.Count + pagesize - 1) / pagesize }; return(ToReturn); }
public static async Task <bool> PostFAQ(FAQ faq, bool done) { var a = await AG.GetAllFAQs(); await Task.Run(() => { faq.Id = a.Max(x => x.Id) + 1; foreach (Group g in AG.Groups) { if (g.Id == faq.GroupId) { g.FAQs.Add(faq); done = true; break; } } }); return(done); }
[HttpGet] // bolor FAQ-eri hamar public async Task <ActionResult <List <FAQ> > > GetFAQs() { return(await AG.GetAllFAQs()); //AG.GetAllFAQs-y metoda Context.cs-i mej }