Пример #1
0
        public void UrlDetailInsert(int urlId, string[,] arrValue)
        {
            try
            {
                if (db.UrlDetails.Where(v => v.UrlId == urlId).First().Id > 0)
                {
                    return;
                }
            }
            catch (Exception) { }
            UrlDetail obj;
            int       len = arrValue.Length / 3;

            for (int i = 0; i < len; i++)
            {
                if (arrValue[i, 2].Length > 0)
                {
                    obj             = new UrlDetail();
                    obj.UrlId       = urlId;
                    obj.SearchBegin = arrValue[i, 0];
                    obj.SearchEnd   = arrValue[i, 1];
                    obj.FieldNum    = i;
                    obj.FieldOrder  = Convert.ToInt32(arrValue[i, 2]);
                    db.UrlDetails.InsertOnSubmit(obj);
                }
            }
            db.SubmitChanges();
        }
Пример #2
0
        public void UrlDetailInsert(int urlId, string[,] arrValue)
        {
            List <UrlDetail> lst = null;

            try
            {
                lst = db.UrlDetails.Where(v => v.UrlId == urlId).ToList();
            }
            catch (Exception) { }

            int       len = arrValue.Length / 6;
            UrlDetail item;

            for (int i = 0; i < len; i++)
            {
                if (arrValue[i, 2].Length > 0)
                {
                    try
                    {
                        item             = lst.Where(v => v.FieldNum == i).First();
                        item.SearchSkip  = arrValue[i, 0];
                        item.SearchBegin = arrValue[i, 1];
                        item.SearchEnd   = arrValue[i, 2];
                        item.FieldOrder  = Convert.ToInt32(arrValue[i, 3]);
                        item.DataType    = arrValue[i, 4];
                        item.DefGroup    = arrValue[i, 5] == null ? 0: Convert.ToInt32(arrValue[i, 5]);

                        db.SubmitChanges();
                    }
                    catch (Exception) {
                        item             = new UrlDetail();
                        item.UrlId       = urlId;
                        item.SearchSkip  = arrValue[i, 0];
                        item.SearchBegin = arrValue[i, 1];
                        item.SearchEnd   = arrValue[i, 2];
                        item.FieldNum    = i;
                        item.FieldOrder  = Convert.ToInt32(arrValue[i, 3]);
                        item.DataType    = arrValue[i, 4];
                        item.DefGroup    = arrValue[i, 5] == null ? 0 : Convert.ToInt32(arrValue[i, 5]);
                        db.UrlDetails.InsertOnSubmit(item);
                        db.SubmitChanges();
                    }
                }
            }
        }
Пример #3
0
        // GET: SayfaUrlSirala
        public ActionResult Index(string urls, string words)
        {
            SayfaUrlSiralaModel model = new SayfaUrlSiralaModel();

            model.Words = StringOperations.GetListBySplit(words, ',');
            model.Urls  = StringOperations.GetListBySplit(urls, ',');
            foreach (var url in model.Urls)
            {
                UrlDetail urldetail = new UrlDetail();
                urldetail.Url        = url;
                urldetail.SourceHtml = SiteSource.GetHtml(url).ToLower();
                urldetail.SourceHtml = HtmlPack.GetHtmlExludePopup(urldetail.SourceHtml);
                urldetail.CleanHtml  = SiteSource.GetCleanHtml(urldetail.SourceHtml).ToLower();
                foreach (var word in model.Words)
                {
                    Keyword keyword = new Keyword();
                    keyword.Url   = url;
                    keyword.Word  = word;
                    keyword.Count = 0;
                    List <string> languageCompatibles = new List <string>();
                    languageCompatibles = StringOperations.GetLanguageLowerCompatible(word);
                    languageCompatibles = StringOperations.GetDifferentWords(languageCompatibles);
                    foreach (var languageCompatible in languageCompatibles)
                    {
                        keyword.Count += StringOperations.GetCountWordInSentence(urldetail.CleanHtml, languageCompatible);
                    }
                    urldetail.Keywords.Add(keyword);
                }
                List <int> countList = new List <int>();
                foreach (var keyword in urldetail.Keywords)
                {
                    countList.Add(keyword.Count);
                }
                urldetail.PointByCount  = PageRank.GetPointByCount(countList);
                urldetail.PointByMeta   = PageRank.GetPointByMeta(urldetail.SourceHtml, model.Words);
                urldetail.PointByHeader = PageRank.GetPointByHead(urldetail.SourceHtml, model.Words);
                urldetail.PointByTitle  = PageRank.GetPointByTitle(urldetail.SourceHtml, model.Words);
                urldetail.PointSum     += urldetail.PointByCount + urldetail.PointByMeta + urldetail.PointByHeader + urldetail.PointByTitle;
                model.UrlDetails.Add(urldetail);
            }
            model.UrlDetailsAsc  = model.UrlDetails.OrderBy(u => u.PointSum).ToList();
            model.UrlDetailsDesc = model.UrlDetails.OrderByDescending(u => u.PointSum).ToList();
            return(View(model));
        }