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);
        }
Example #2
0
        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);
        }
Example #4
0
        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;

        }
Example #5
0
        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);
        }
Example #7
0
        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));
        }
Example #9
0
        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));
        }
Example #10
0
        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);
        }
Example #11
0
        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);
        }
Example #12
0
        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));
        }