⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 search.cs

📁 动易SiteFactory&#8482 网上商店系统1.0源代码
💻 CS
📖 第 1 页 / 共 2 页
字号:
            }
            if (specialid > 0)
            {
                SpecialInfo specialInfoById = Special.GetSpecialInfoById(specialid);
                if (!specialInfoById.IsNull)
                {
                    if (!string.IsNullOrEmpty(specialInfoById.SearchTemplatePath))
                    {
                        return specialInfoById.SearchTemplatePath;
                    }
                    DynamicPage.WriteErrMsg("没有设置专题模板!", "Special.aspx");
                    return str;
                }
                DynamicPage.WriteErrMsg("找不到指定的专题!", "Special.aspx");
                return str;
            }
            DynamicPage.WriteErrMsg("没有设置任何专题模板!", "Special.aspx");
            return str;
        }

        private string GetTemplateFile(int modelId)
        {
            string str = "";
            ModelInfo cacheModelById = ModelManager.GetCacheModelById(modelId);
            if (!cacheModelById.IsNull)
            {
                if (!string.IsNullOrEmpty(cacheModelById.SearchTemplate))
                {
                    return cacheModelById.SearchTemplate;
                }
                DynamicPage.WriteErrMsg("指定的模型未设置模板!");
                return str;
            }
            DynamicPage.WriteErrMsg("找不到指定的模型!");
            return str;
        }

        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
        }

        protected override void Render(HtmlTextWriter writer)
        {
            TemplateInfo templateInfo = new TemplateInfo();
            int num = BasePage.RequestInt32("searchtype");
            string modelname = DataSecurity.FilterBadChar(BasePage.RequestString("ModuleName"));
            string str2 = DataSecurity.FilterBadChar(base.Request.QueryString["keyword"]);
            int modelId = BasePage.RequestInt32("ModelId");
            string templatePath = "";
            NameValueCollection newQuerysString = new NameValueCollection();
            switch (num)
            {
                case 0:
                    newQuerysString.Add("keyword", str2);
                    if (!string.IsNullOrEmpty(str2))
                    {
                        this.SaveKeyword(str2);
                    }
                    templatePath = base.TemplatePath;
                    break;

                case 1:
                {
                    newQuerysString.Add("nodeid", DataConverter.CLng(base.Request.QueryString["nodeid"]).ToString());
                    string str4 = DataSecurity.FilterBadChar(base.Request.QueryString["fieldoption"]);
                    newQuerysString.Add("fieldoption", str4);
                    if ((str4 == "keyword") && !string.IsNullOrEmpty(str2))
                    {
                        this.SaveKeyword(str2);
                    }
                    newQuerysString.Add("keyword", str2);
                    templatePath = this.GetTemplateFile(modelId);
                    break;
                }
                case 2:
                    if (BasePage.RequestInt32("showtype") != 1)
                    {
                        templatePath = this.GetAdvanceTemplateForm(modelId);
                        break;
                    }
                    newQuerysString = this.GetNewQuerysString(modelname, str2);
                    templatePath = this.GetAdvanceTemplateFile(modelId);
                    break;

                case 3:
                {
                    string[] strArray = DataSecurity.FilterBadChar(base.Request.QueryString["specialid"]).Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries);
                    int specialid = DataConverter.CLng(strArray[1]);
                    int specialcategoryid = DataConverter.CLng(strArray[0]);
                    newQuerysString.Add("specialid", specialid.ToString());
                    newQuerysString.Add("specialcategoryid", specialcategoryid.ToString());
                    string str6 = DataSecurity.FilterBadChar(base.Request.QueryString["fieldoption"]);
                    newQuerysString.Add("fieldoption", str6);
                    if ((str6 == "keyword") && !string.IsNullOrEmpty(str2))
                    {
                        this.SaveKeyword(str2);
                    }
                    newQuerysString.Add("keyword", str2);
                    templatePath = this.GetSpecialTemplate(specialid, specialcategoryid);
                    break;
                }
                default:
                    newQuerysString.Add("keyword", str2);
                    if (!string.IsNullOrEmpty(str2))
                    {
                        this.SaveKeyword(str2);
                    }
                    templatePath = base.TemplatePath;
                    break;
            }
            if (!string.IsNullOrEmpty(templatePath))
            {
                templateInfo.QueryList = newQuerysString;
                templateInfo.PageName = DynamicPage.RebuildPageName(base.Request.Url.LocalPath, base.Request.QueryString);
                templateInfo.TemplateContent = Template.GetTemplateContent(templatePath);
                templateInfo.RootPath = HttpContext.Current.Request.PhysicalApplicationPath;
                templateInfo.CurrentPage = DataConverter.CLng(base.Request.QueryString["page"], 1);
                templateInfo.IsDynamicPage = true;
                templateInfo.PageType = 1;
                templateInfo = TemplateTransform.GetHtml(templateInfo);
                writer.Write(templateInfo.TemplateContent);
            }
            else
            {
                DynamicPage.WriteErrMsg("全站搜索结果页未设置模板!", "Default.aspx");
            }
        }

        private void SaveKeyword(string keyword)
        {
            if (Keywords.Exists(keyword))
            {
                Keywords.UpdateHitsByKeywordName(keyword);
            }
            else
            {
                KeywordInfo keywordInfo = new KeywordInfo();
                keywordInfo.KeywordText = keyword;
                keywordInfo.KeywordType = 1;
                keywordInfo.LastUseTime = DateTime.Now;
                keywordInfo.Priority = 0;
                keywordInfo.Hits = 1;
                keywordInfo.ArrayGeneralId = "0";
                keywordInfo.QuoteTimes = 0;
                Keywords.Add(keywordInfo);
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -