public Models.ChannelViewModel LoadMainData(int id, int p) { Models.ChannelViewModel viewModel = new Models.ChannelViewModel(); //获取频道数据 var channelRepository = _unitOfWork.GetRepository <Entity.m_CmsChannel>(); viewModel.ChannelListData = channelRepository.Query() .OrderBy(q => q.SortCount) .Select(q => new Models.ChannelDataModel() { AppendTime = q.AppendTime.Value, ChannelId = q.ChannelId.Value, ChannelName = q.ChannelName, RemarkText = q.RemarkText, SortCount = q.SortCount.Value, StateCode = q.StateCode.Value }) .ToList(); //获取帖子数据 var repository = _unitOfWork.GetRepository <Entity.m_CmsContents>(); var accountRepository = _unitOfWork.GetRepository <m_Account>(); viewModel.ContentsListData = repository.Query() .Join(accountRepository.Query(), c => c.AccountId, account => account.AccountId, (c, account) => new { c, account }) .Join(channelRepository.Query(), ca => ca.c.ChannelId, channel => channel.ChannelId, (ca, channel) => new Models.ContentsListDataModel() { AccountId = ca.c.AccountId.Value, AnswerCount = ca.c.AnswerCount.Value, ChannelId = ca.c.ChannelId.Value, ChannelName = channel.ChannelName, ContentsId = ca.c.ContentsId.Value, HeadUrl = ca.account.HeadUrl, LastTime = ca.c.LastTime.Value, NickName = ca.account.NickName, PlusCount = ca.c.PlusCount.Value, PostTime = ca.c.PostTime.Value, ReadCount = ca.c.ReadCount.Value, StateCode = ca.c.StateCode.Value, Title = ca.c.Title }) .Where(q => q.StateCode == 1 && (id > 0 ? q.ChannelId == id : q.ChannelId != 0)) .OrderByDescending(q => q.ContentsId) .Skip(10 * (p - 1)) .Take(10) .ToList(); viewModel.TotalCount = repository.Query().Where(q => q.StateCode == 1 && (id > 0 ? q.ChannelId == id : q.ChannelId != 0)).Select(q => q.ContentsId).Count(); return(viewModel); }
public Models.ChannelViewModel LoadMainData(int id, int p) { Models.ChannelViewModel viewModel = new Models.ChannelViewModel(); //获取频道数据 var apiResult = HttpCore.HttpGet("/api/CMS/Channel"); if (apiResult.Code == 0) { viewModel.ChannelListData = JsonConvert.DeserializeObject <List <Models.ChannelDataModel> >(apiResult.Data.ToString()); } //获取帖子数据 apiResult = HttpCore.HttpGet($"/api/CMS/Channel/{id}/{p}"); if (apiResult.Code == 0) { viewModel.ContentsListData = JsonConvert.DeserializeObject <List <Models.ContentsListDataModel> >(apiResult.Data.ToString()); } return(viewModel); }