public IEnumerable <IArchive> GetArchivesContainChildCategories(int siteId, int lft, int rgt, int number) { IList <IArchive> archives = new List <IArchive>(); IList <IExtendValue> defaultValues = new List <IExtendValue>(); IDictionary <int, IList <IExtendValue> > extendValues = new Dictionary <int, IList <IExtendValue> >(); _dal.GetSelftAndChildArchiveExtendValues(siteId, (int)ExtendRelationType.Archive, lft, rgt, number, rd => { extendValues = this._extendRep._GetExtendValuesFromDataReader(siteId, rd); }); IArchive archive; _dal.GetSelftAndChildArchives(siteId, lft, rgt, number, rd => { //DateTime dt = DateTime.Now; IndexOfHandler <String> dg = this.GetIndexOfDataReaderColumnNameDelegate(rd.GetColumns(true)); while (rd.Read()) { archive = this.CreateArchiveFromDataReader(rd, dg); archive.ExtendValues = extendValues.ContainsKey(archive.Id) ? extendValues[archive.Id] : defaultValues; archives.Add(archive); } //throw new Exception((DateTime.Now - dt).TotalMilliseconds.ToString()); }); return(archives); }
private IArchive CreateArchiveFromDataReader(DbDataReader rd, IndexOfHandler <String> indexOf) { IArchive archive; archive = this.CreateArchive(int.Parse(rd["id"].ToString()), rd["strid"].ToString(), int.Parse(rd["cid"].ToString()), rd["title"].ToString()); archive.Alias = rd["alias"].ToString(); if (indexOf("flags") != -1) { archive.Flags = rd["flags"].ToString(); } if (indexOf("location") != -1) { archive.Location = rd["location"].ToString(); } if (indexOf("outline") != -1) { archive.Outline = (rd["outline"] ?? "").ToString(); } if (indexOf("author") != -1) { archive.Author = rd["author"].ToString(); } if (indexOf("content") != -1) { archive.Content = rd["content"].ToString(); } if (indexOf("source") != -1) { archive.Source = (rd["source"] ?? "").ToString(); } if (indexOf("tags") != -1) { archive.Tags = (rd["tags"] ?? "").ToString(); } if (indexOf("thumbnail") != -1) { archive.Thumbnail = (rd["thumbnail"] ?? "").ToString(); } if (indexOf("createdate") != -1) { archive.CreateDate = Convert.ToDateTime(rd["createdate"]); } if (indexOf("lastmodifydate") != -1) { archive.LastModifyDate = Convert.ToDateTime(rd["lastmodifydate"]); } if (indexOf("viewcount") != -1) { archive.ViewCount = int.Parse((rd["viewcount"] ?? "0").ToString()); } //archive.Agree = int.Parse((rd["agree"] ?? "0").ToString()); //archive.Disagree = int.Parse((rd["disagree"] ?? "0").ToString()); //rd.CopyToEntity(archive); return(archive); }
public IEnumerable <IArchive> GetArchivesByCategoryTag(int siteId, string categoryTag, int number) { IArchive archive; IList <IArchive> archives = new List <IArchive>(); IList <IExtendValue> defaultValues = new List <IExtendValue>(); IDictionary <int, IList <IExtendValue> > extendValues = new Dictionary <int, IList <IExtendValue> >(); _dal.GetArchivesExtendValues(siteId, (int)ExtendRelationType.Archive, categoryTag, number, rd => { extendValues = this._extendRep._GetExtendValuesFromDataReader(siteId, rd); }); _dal.GetArchives(siteId, categoryTag, number, rd => { IndexOfHandler <String> dg = this.GetIndexOfDataReaderColumnNameDelegate(rd.GetColumns(true)); while (rd.Read()) { archive = this.CreateArchiveFromDataReader(rd, dg); archive.ExtendValues = extendValues.ContainsKey(archive.Id) ? extendValues[archive.Id] : defaultValues; archives.Add(archive); } }); return(archives); }
private IArchive CreateArchiveFromDataReader(DbDataReader rd, IndexOfHandler<String> indexOf) { IArchive archive; archive = this.CreateArchive(int.Parse(rd["id"].ToString()), rd["strid"].ToString(), int.Parse(rd["cid"].ToString()), rd["title"].ToString()); archive.Alias = rd["alias"].ToString(); if (indexOf("flags") != -1) archive.Flags = rd["flags"].ToString(); if (indexOf("outline") != -1) archive.Outline = (rd["outline"] ?? "").ToString(); if (indexOf("author") != -1) archive.Author = rd["author"].ToString(); if (indexOf("content") != -1) archive.Content = rd["content"].ToString(); if (indexOf("source") != -1) archive.Source = (rd["source"] ?? "").ToString(); if (indexOf("tags") != -1) archive.Tags = (rd["tags"] ?? "").ToString(); if (indexOf("thumbnail") != -1) archive.Thumbnail = (rd["thumbnail"] ?? "").ToString(); if (indexOf("createdate") != -1) archive.CreateDate = Convert.ToDateTime(rd["createdate"]); if (indexOf("lastmodifydate") != -1) archive.LastModifyDate = Convert.ToDateTime(rd["lastmodifydate"]); if (indexOf("viewcount") != -1) archive.ViewCount = int.Parse((rd["viewcount"] ?? "0").ToString()); //archive.Agree = int.Parse((rd["agree"] ?? "0").ToString()); //archive.Disagree = int.Parse((rd["disagree"] ?? "0").ToString()); //rd.CopyToEntity(archive); return archive; }
public IArchive GetArchiveByPath(int siteId, string path) { IArchive archive = null; this._dal.GetArchiveByPath(siteId, path, rd => { IndexOfHandler <String> dg = this.GetIndexOfDataReaderColumnNameDelegate(rd.GetColumns(true)); if (rd.Read()) { archive = this.CreateArchiveFromDataReader(rd, dg); } }); return(archive); }
public IArchive GetPreviousArchive(int siteId, int id, bool sameCategory, bool ingoreSpecial) { IArchive archive = null; _dal.GetPreviousArchive(siteId, id, sameCategory, ingoreSpecial, rd => { IndexOfHandler <String> dg = this.GetIndexOfDataReaderColumnNameDelegate(rd.GetColumns(true)); if (rd.Read()) { archive = this.CreateArchiveFromDataReader(rd, dg); } }); return(archive); }
public IArchive GetNextSiblingArchive(int siteId, int id) { IArchive archive = null; _dal.GetNextSiblingArchive(siteId, id, rd => { IndexOfHandler <String> dg = this.GetIndexOfDataReaderColumnNameDelegate(rd.GetColumns(true)); if (rd.Read()) { archive = this.CreateArchiveFromDataReader(rd, dg); } }); return(archive); }
public IEnumerable <IArchive> GetArchivesByViewCount(int siteId, int lft, int rgt, int number) { IList <IArchive> archives = new List <IArchive>(); IArchive archive; _dal.GetArchivesByViewCount(siteId, lft, rgt, number, rd => { IndexOfHandler <String> dg = this.GetIndexOfDataReaderColumnNameDelegate(rd.GetColumns(true)); while (rd.Read()) { archive = this.CreateArchiveFromDataReader(rd, dg); archives.Add(archive); } }); return(this.GetContainExtendValueArchiveList(siteId, archives)); }
public IEnumerable <IArchive> GetSpecialArchives(int siteId, string categoryTag, int number, int skipSize) { IList <IArchive> archives = new List <IArchive>(); IArchive archive; _dal.GetSpecialArchives(siteId, categoryTag, number, skipSize, rd => { IndexOfHandler <String> dg = this.GetIndexOfDataReaderColumnNameDelegate(rd.GetColumns(true)); while (rd.Read()) { archive = this.CreateArchiveFromDataReader(rd, dg); archives.Add(archive); } }); return(this.GetContainExtendValueArchiveList(siteId, archives)); }
public IEnumerable <IArchive> SearchArchives(int siteId, string keyword, int pageSize, int pageIndex, out int records, out int pages, string orderBy) { IArchive archive; IList <IArchive> archives = new List <IArchive>(); _dal.SearchArchives(siteId, keyword, pageSize, pageIndex, out records, out pages , orderBy, rd => { IndexOfHandler <String> dg = this.GetIndexOfDataReaderColumnNameDelegate(rd.GetColumns(true)); while (rd.Read()) { archive = this.CreateArchiveFromDataReader(rd, dg); archives.Add(archive); } }); return(archives); }
public IEnumerable <IArchive> GetArchivesContainChildCategories(int siteId, int[] catIdArray, int number, int skipSize) { IList <IArchive> archives = new List <IArchive>(); IList <IExtendValue> defaultValues = new List <IExtendValue>(); IDictionary <int, IList <IExtendValue> > extendValues = null; _dal.GetSelftAndChildArchiveExtendValues(siteId, (int)ExtendRelationType.Archive, catIdArray, number, skipSize, rd => { extendValues = this._extendRep._GetExtendValuesFromDataReader(siteId, rd); }); if (extendValues == null) { extendValues = new Dictionary <int, IList <IExtendValue> >(); } IArchive archive; _dal.GetArchiveList(siteId, catIdArray, number, skipSize, rd => { //DateTime dt = DateTime.Now; IndexOfHandler <String> dg = this.GetIndexOfDataReaderColumnNameDelegate(rd.GetColumns(true)); while (rd.Read()) { archive = this.CreateArchiveFromDataReader(rd, dg); if (extendValues.ContainsKey(archive.GetAggregaterootId())) { archive.SetExtendValue(extendValues[archive.GetAggregaterootId()]); } else { archive.SetExtendValue(defaultValues); } archives.Add(archive); } //throw new Exception((DateTime.Now - dt).TotalMilliseconds.ToString()); }); return(archives); }
private IArchive CreateArchiveFromDataReader(DbDataReader rd, IndexOfHandler <String> indexOf) { CmsArchiveEntity archive = new CmsArchiveEntity(); if (indexOf("id") != -1) { archive.ID = Convert.ToInt32(rd["id"] ?? "0"); } if (indexOf("cat_id") != -1) { archive.CatId = Convert.ToInt32(rd["cat_id"]); } if (indexOf("title") != -1) { archive.Title = (rd["title"] ?? "").ToString(); } if (indexOf("flag") != -1) { archive.Flag = Convert.ToInt32(rd["flag"] ?? "0"); } if (indexOf("path") != -1) { archive.Path = (rd["path"] ?? "").ToString(); } if (indexOf("alias") != -1) { archive.Alias = (rd["alias"] ?? "").ToString(); } if (indexOf("str_id") != -1) { archive.StrId = (rd["str_id"] ?? "").ToString(); } if (indexOf("site_id") != -1) { archive.SiteId = Convert.ToInt32(rd["site_id"]); } if (indexOf("small_title") != -1) { archive.SmallTitle = (rd["small_title"] ?? "").ToString(); } if (indexOf("location") != -1) { archive.Location = rd["location"].ToString(); } if (indexOf("sort_number") != -1) { archive.SortNumber = int.Parse(rd["sort_number"].ToString()); } if (indexOf("outline") != -1) { archive.Outline = (rd["outline"] ?? "").ToString(); } if (indexOf("author_id") != -1) { archive.AuthorId = rd["author_id"] == DBNull.Value ? 0 : Convert.ToInt32(rd["author_id"]); } if (indexOf("content") != -1) { archive.Content = rd["content"].ToString(); } if (indexOf("source") != -1) { archive.Source = (rd["source"] ?? "").ToString(); } if (indexOf("tags") != -1) { archive.Tags = (rd["tags"] ?? "").ToString(); } if (indexOf("thumbnail") != -1) { archive.Thumbnail = (rd["thumbnail"] ?? "").ToString(); } if (indexOf("create_time") != -1) { archive.CreateTime = Convert.ToInt32(rd["create_time"]); } if (indexOf("update_time") != -1) { archive.UpdateTime = Convert.ToInt32(rd["update_time"]); } if (indexOf("view_count") != -1) { archive.ViewCount = int.Parse((rd["view_count"] ?? "0").ToString()); } //archive.Agree = int.Parse((rd["agree"] ?? "0").ToString()); //archive.Disagree = int.Parse((rd["disagree"] ?? "0").ToString()); //rd.CopyToEntity(archive); return(this.CreateArchive(archive)); }