我使用mvc web api作为离子项目的背景api(使用angularjs),并希望使用会话将数据传递到字典,以便我可以从总数据中获取有限数据并在第一页显示它们,然后下一页数据以及滚动,请帮帮我
[HttpGet]
[Route("user/takenCourseDetails")]
[ResponseType(typeof(TeachMatEventsModelView))]
public IHttpActionResult takenCourseDetails(int masterCourseId, int secId, int page, int PageSize, int IsPaging)
{
if (IsPaging == 0)
{
if (page == 0)
{
LoadAllEventToSession(masterCourseId, secId);
var eventList = GetProductsForPage(page);
return Ok(eventList);
}
}
return Ok();
}
public void LoadAllEventToSession(int masterCourseId, int secId)
{
if (db.View_TeachMatEventList.Where(m => m.MasterCourseId == masterCourseId && m.SectionId == secId).Any())
{
var allEventList = db.View_TeachMatEventList.Where(m => m.MasterCourseId == masterCourseId && m.SectionId == secId
&& m.HasParent==false && m.Status == 1).OrderBy(m => m.EventNumber).ToList();
int cmnIndex = 1;
var session = HttpContext.Current.Session;
session["event"] = allEventList.ToDictionary(m => cmnIndex++, m => m);
session["totalEvent"] = allEventList.Count();
}
}
public Dictionary<int, TeachMatEventsModelView> GetProductsForPage(int pageNum)
{
var session = HttpContext.Current.Session;
Dictionary<int, TeachMatEventsModelView> eventList= (session["event"] as Dictionary<int, TeachMatEventsModelView>);
int from = (pageNum * ShowEventPerPage);
int to = from + ShowEventPerPage;//ShowEventPerPage=5;
return eventList.Where(x => x.Key > from && x.Key <= to).OrderBy(x => x.Key).ToDictionary(x => x.Key, x => x.Value);
}
错误: