Example #1
0
        /// <summary>
        /// 根据PageID取第一个图片
        /// </summary>
        /// <param name="pageIds"></param>
        /// <returns></returns>
        public IEnumerable<Model.FileInfo> GetFileInfos(IEnumerable<int> pageIds)
        {
            using (var dbContext = new PhotoContext())
            {
                var files = (from pf in dbContext.PageFiles
                             join f in dbContext.FileInfos on pf.file_id equals f.id into t
                             from tt in t.DefaultIfEmpty()
                             where pageIds.Contains(pf.page_id)
                             orderby tt.add_time
                             group tt by pf.page_id into g
                             select new
                             {
                                 PageId = g.Key,
                                 url = g.FirstOrDefault() == null ? string.Empty : g.FirstOrDefault().url,
                                 path = g.FirstOrDefault() == null ? string.Empty : g.FirstOrDefault().path,
                                 width = g.FirstOrDefault() == null ? 0 : g.FirstOrDefault().width,
                                 height = g.FirstOrDefault() == null ? 0 : g.FirstOrDefault().height

                             }).ToList();
                var list = (from f in files
                            select new Model.FileInfo
                            {
                                PageId = f.PageId,
                                url = f.url,
                                path = f.path,
                                width = f.width,
                                height = f.height
                            }).AsEnumerable();

                return list;
            }
        }
Example #2
0
        public IEnumerable<Model.FileInfo> GetFileInfos(int pageId)
        {
            using (var dbContext = new PhotoContext())
            {
                var query = (from p in dbContext.PageInfos
                             join pf in dbContext.PageFiles on p.id equals pf.page_id
                             join f in dbContext.FileInfos on pf.file_id equals f.id
                             where p.id == pageId
                             select f).ToList();

                return query;
            }
        }