private void DataBaseList()
        {
            B_ModelField mdll = new B_ModelField();

            this.Repeater1.DataSource = this.bll.GetListPage();
            this.Repeater1.DataBind();
        }
Beispiel #2
0
        public void DataBind(string key = "")
        {
            B_ModelField mll  = new B_ModelField();
            DataTable    list = mll.SelectTableName("ZL_CommonModel", "Tablename like 'ZL_Store_%'  order by GeneralID desc");

            switch (Request.QueryString["type"])
            {
            case "0":
                list.DefaultView.RowFilter = "Status=99";
                break;

            case "1":
                list.DefaultView.RowFilter = "Status=0";
                break;

            case "2":
                list.DefaultView.RowFilter = "Status=99 AND EliteLevel=1";
                break;

            default:
                break;
            }
            this.modeinfo  = list;
            Egv.DataSource = list.DefaultView.ToTable();
            Egv.DataBind();
        }
        /// <summary>
        /// 绑定字段选择下拉框
        /// </summary>
        /// <param name="ModelID">字段所属模型ID</param>
        /// <param name="type">
        /// 方式:
        /// 0=企业信息显示字段
        /// 1=招聘信息职位字段
        /// </param>
        private void BindDrop(int ModelID, int type)
        {
            B_ModelField bfield = new B_ModelField();
            DataTable    dt     = bfield.GetModelFieldList(ModelID);

            if (type == 0)
            {
                this.CompanyField.Items.Clear();
                this.CompanyField.DataSource     = dt;
                this.CompanyField.DataTextField  = "FieldAlias";
                this.CompanyField.DataValueField = "FieldID";
                this.CompanyField.DataBind();
                CompanyField.Items.Insert(0, new ListItem("选择字段", "0"));
            }
            else
            {
                this.JobsField.Items.Clear();
                this.JobsField.DataSource     = dt;
                this.JobsField.DataTextField  = "FieldAlias";
                this.JobsField.DataValueField = "FieldID";
                this.JobsField.DataBind();
                JobsField.Items.Insert(0, new ListItem("选择字段", "0"));
                //JobsField.SelectedValue = "0";
            }
        }
Beispiel #4
0
        private void DataBaseList()
        {
            B_ModelField mfll = new B_ModelField();

            this.Repeater1.DataSource = mfll.SelectTableName("ZL_Model", "TableName like 'ZL_School_%'");
            this.Repeater1.DataBind();
        }
        //初始化
        private void GetInit()
        {
            M_CommonData dtinfo = cbll.GetCommonData(sid);
            DataTable    dt     = cbll.GetContent(sid);

            this.Namelabel.Text = dtinfo.Title;
            this.Label1.Text    = dtinfo.Inputer;
            string       tablename = dtinfo.TableName;
            B_ModelField mfll      = new B_ModelField();

            SafeSC.CheckDataEx(tablename);
            DataTable tableinfo = mfll.SelectTableName("ZL_Model", "tablename = '" + tablename + "'");
            B_Model   mll       = new B_Model();

            if (tableinfo.Rows.Count > 0)
            {
                this.Label6.Text = mbll.GetModelById(DataConverter.CLng(dt.Rows[0]["StoreModelID"].ToString())).ModelName;
            }
            else
            {
                this.Label6.Text = "查询错误!请核实此模型是否存在";
            }
            //string tophtml = "<tr><td width=\"20%\"></td><td width = \"80%\"></td>";
            //string endhtml = "</tr>";
            //this.ModelHtml.Text = tophtml + this.mfbll.GetUpdateHtmlUser(int.Parse(dt.Rows[0]["StoreModelID"].ToString()), 0, dt) + endhtml;
            //this.ModelHtml.Text = this.mfbll.GetUpdateHtmlUser(int.Parse(dt.Rows[0]["StoreModelID"].ToString()), 0, dt);
        }
        /// <summary>
        /// 通过ModelID ,itemID查找图片路径
        /// </summary>
        /// <param name="modelID"></param>
        /// <param name="itemID"></param>
        /// <returns></returns>
        private string GetPicPathByModelID(int modelID, int itemID)
        {
            B_Model      bm        = new B_Model();
            M_ModelInfo  modelinfo = bm.GetModelById(modelID);
            B_ModelField bmf       = new B_ModelField();
            M_ModelField mf        = bmf.GetFieldNameByMID(modelID);
            string       fieldName = "";

            if (mf != null && mf.ModelID > 0)
            {
                fieldName = mf.FieldName;
            }
            if (modelinfo != null && modelinfo.ModelID > 0)
            {
                //DataSet ds = cll.PRoContentChilds(modelinfo.TableName, itemID);
                //if (ds != null && ds.Tables[0].Rows.Count > 0)
                //{
                //    DataRow dr = ds.Tables[0].Rows[0];
                //    foreach (DataColumn item in ds.Tables[0].Columns)
                //    {
                //        if (item.ToString().Trim().Equals(fieldName))
                //        {
                //            return dr[item].ToString();
                //        }
                //    }
                //}
            }
            return("");
        }
Beispiel #7
0
        private void InitFileExtArr()
        {
            string content   = "";
            string fieldType = "";

            if (ModelID > 0)
            {
                B_ModelField bmf = new B_ModelField();
                M_ModelField mmf = bmf.GetModelByFieldName(ModelID, FieldName);
                mmf       = (mmf == null) ? new M_ModelField() : mmf;
                content   = mmf.Content;
                fieldType = mmf.FieldType;
            }
            else
            {
                B_UserBaseField bubf = new B_UserBaseField();
                M_UserBaseField mubf = bubf.getUserBaseFieldByFieldName(FieldName);
                mubf      = (mubf == null) ? new M_UserBaseField() : mubf;
                content   = mubf.Content;
                fieldType = mubf.FieldType;
            }
            if (content != null)
            {
                string[] Setting = content.Split(new char[] { ',' });
                if (fieldType == "PicType")
                {
                    this.m_MaxFileSize            = DataConverter.CLng(Setting[1].Split(new char[] { '=' })[1]);
                    this.ViewState["MaxFileSize"] = Setting[1].Split(new char[] { '=' })[1];
                    this.m_FileExtArr             = Setting[2].Split(new char[] { '=' })[1];
                    this.ViewState["FileExtArr"]  = Setting[2].Split(new char[] { '=' })[1];
                    this.ViewState["UploadType"]  = "PicType";
                }
                if (fieldType == "FileType")
                {
                    string chkSize   = Setting[0].Split(new char[] { '=' })[1];
                    string SizeField = Setting[1].Split(new char[] { '=' })[1];
                    this.ViewState["SizeField"]   = SizeField;
                    this.m_MaxFileSize            = DataConverter.CLng(Setting[2].Split(new char[] { '=' })[1]);
                    this.ViewState["MaxFileSize"] = Setting[2].Split(new char[] { '=' })[1];
                    this.m_FileExtArr             = Setting[3].Split(new char[] { '=' })[1];
                    this.ViewState["FileExtArr"]  = Setting[3].Split(new char[] { '=' })[1];
                    this.ViewState["UploadType"]  = "FileType";
                }

                if (fieldType == "SmallFileType")
                {
                    string chkSize   = Setting[0].Split(new char[] { '=' })[1];
                    string SizeField = Setting[1].Split(new char[] { '=' })[1];
                    this.ViewState["SizeField"]   = SizeField;
                    this.m_MaxFileSize            = DataConverter.CLng(chkSize);
                    this.ViewState["MaxFileSize"] = chkSize;
                    this.m_FileExtArr             = SizeField;
                    this.ViewState["FileExtArr"]  = SizeField;
                    this.ViewState["UploadType"]  = "SmallFileType";
                }
            }
        }
Beispiel #8
0
        /// <summary>
        /// 获取用户申请的附加字段信息
        /// </summary>
        public DataRow SelUserApplyInfo(M_PageReg regMod)
        {
            if (string.IsNullOrEmpty(regMod.TableName) || regMod.InfoID < 1)
            {
                return(null);
            }
            B_ModelField fieldBll = new B_ModelField();
            DataTable    dt       = fieldBll.SelectTableName(regMod.TableName, "ID=" + regMod.InfoID);

            return(dt.Rows.Count > 0 ? dt.Rows[0] : null);
        }
Beispiel #9
0
        protected string GetTitle(string titleid)
        {
            B_ModelField dd      = new B_ModelField();
            DataTable    newinfo = cbll.SelByItemID(Convert.ToInt32(titleid));

            if (newinfo.Rows.Count > 0)
            {
                return(newinfo.Rows[0]["Title"].ToString());
            }
            else
            {
                return("");
            }
        }
Beispiel #10
0
        private static void BeginCollContent()
        {
            B_Model          modBll  = new B_Model();
            B_ModelField     fdBll   = new B_ModelField();
            B_CollectionItem itemBll = new B_CollectionItem();

            foreach (M_CollectionItem item in workList)
            {
                if (B_Coll_Worker.work_switcher == false)
                {
                    break;
                }
                if (string.IsNullOrEmpty(item.LinkList))
                {
                    WriteLog("项目[" + item.ItemName + "]取消,原因:未指定需要采集的列表URL,LinkList"); continue;
                }
                if (string.IsNullOrEmpty(item.InfoPageSettings))
                {
                    WriteLog("项目[" + item.ItemName + "]取消,原因:未指定字段采集规则"); continue;
                }
                if (string.IsNullOrEmpty(item.CollUrl))
                {
                    WriteLog("项目[" + item.ItemName + "]取消,原因:未指定采集来源网址CollUrl"); continue;
                }
                M_ModelInfo modMod  = modBll.SelReturnModel(item.ModeID);
                DataTable   fieldDT = fdBll.SelByModelID(item.ModeID);
                foreach (string url in item.LinkList.Split('\n'))
                {
                    if (B_Coll_Worker.work_switcher == false)
                    {
                        WriteLog("采集项目[" + item.ItemName + "]已停止", ERROR); break;
                    }
                    if (string.IsNullOrEmpty(url))
                    {
                        continue;
                    }
                    WriteLog("正在采集[" + item.ItemName + "]的目标网址[" + url + "]");
                    CollectByUrl(url, item, modMod, fieldDT);
                }
                DBCenter.UpdateSQL(item.TbName, "Switch=2", "CItem_ID=" + item.CItem_ID);
            }
            WriteLog("采集完成,共采集到[" + work_count + "]篇内容", 99);
            work_switcher = false;
            work_count    = 0;
            workList.Clear();
        }
        protected void RepairData_Btn_Click(object sender, EventArgs e)
        {
            B_ModelField fieldBll = new B_ModelField();
            DataTable    dt       = fieldBll.Sel();

            foreach (DataRow dr in dt.Rows)
            {
                int    fid     = DataConverter.CLng(dr["FieldID"]);
                string content = DataConverter.CStr(dr["Content"]);
                if (!content.Contains("||") || !content.Contains("="))
                {
                    continue;
                }

                //1=是||否,Property=True,Default=
                string       itemStr  = content.Split(',')[0].Split('=')[1];
                M_ModelField fieldMod = fieldBll.SelReturnModel(fid);
                fieldMod.Content = content.Replace(itemStr, SortStr(itemStr));
                fieldBll.Update(fieldMod);
            }
            function.WriteSuccessMsg("操作成功");
        }
Beispiel #12
0
        //互动模型需要扩展
        public void RestoreByName(string name)
        {
            B_Model      modelBll = new B_Model();
            B_ModelField fieldBll = new B_ModelField();
            B_Pub        pubBll   = new B_Pub();
            string       ppath    = SafeSC.PathDeal(pdir + name);

            if (!File.Exists(ppath))
            {
                function.WriteErrMsg("备份文件[" + name + "]不存在");
            }
            //清空数据
            modelBll.DeleteAll();
            foreach (string tbname in tbnames)
            {
                SqlHelper.ExecuteSql("TRUNCATE TABLE " + tbname);
            }
            SqlHelper.ExecuteSql("TRUNCATE TABLE ZL_CommonModel");
            //开始恢复
            DataSet ds = new DataSet();

            ds.ReadXml(ppath);
            //批量导入部分数据
            SqlHelper.Insert_Bat(ds.Tables["ZL_Node"], SqlHelper.ConnectionString);
            if (ds.Tables["ZL_Pub"] != null)
            {
                SqlHelper.Insert_Bat(ds.Tables["ZL_Pub"], SqlHelper.ConnectionString);
            }
            if (ds.Tables["ZL_Node_ModelTemplate"] != null)
            {
                SqlHelper.Insert_Bat(ds.Tables["ZL_Node_ModelTemplate"], SqlHelper.ConnectionString);
            }
            if (ds.Tables["ZL_UserPromotions"] != null)
            {
                SqlHelper.Insert_Bat(ds.Tables["ZL_UserPromotions"], SqlHelper.ConnectionString);
            }
            if (ds.Tables["ZL_NodeRole"] != null)
            {
                SqlHelper.Insert_Bat(ds.Tables["ZL_NodeRole"], SqlHelper.ConnectionString);
            }
            //恢复模型数据与其对应的表
            DataTable modelDT = ds.Tables["ZL_Model"];
            DataTable fieldDT = ds.Tables["ZL_ModelField"];
            DataTable pubDT   = ds.Tables["ZL_Pub"];

            foreach (DataRow dr in modelDT.Rows)
            {
                M_ModelInfo modelMod = new M_ModelInfo().GetModelFromReader(dr);
                ZoomLa.SQLDAL.DBHelper.Table_Del(modelMod.TableName);
                switch (modelMod.ModelType.ToString())
                {
                case "3":    //用户模型和黄页申请模型
                    modelBll.AddUserModel(modelMod);
                    break;

                case "6":    //店铺申请模型
                    modelBll.AddStoreModel(modelMod);
                    break;

                case "7":    //互动模型
                    if (pubDT == null)
                    {
                        break;
                    }
                    M_Pub pubmodel = new M_Pub();
                    pubmodel.PubName      = modelMod.ModelName;
                    pubmodel.PubTableName = modelMod.TableName;
                    DataRow[] drs = pubDT.Select("PubModelID=" + modelMod.ModelID);
                    pubmodel.PubType = drs.Length > 0 ? DataConvert.CLng(drs[0]["PubType"]) : 0;
                    pubBll.CreateModelInfo(pubmodel);
                    break;

                case "8":    //功能模型
                    modelBll.AddFunModel(modelMod);
                    break;

                default:    //内容模型、商城模型、黄页内容模型、店铺商品模型
                    modelBll.AddModel(modelMod);
                    break;
                }
            }
            //恢复字段
            if (fieldDT != null && fieldDT.Rows.Count > 0)
            {
                fieldDT.DefaultView.RowFilter = "sys_type ='false'";
                foreach (DataRow dr in fieldDT.DefaultView.ToTable().Rows)
                {
                    int modelID = DataConvert.CLng(dr["ModelID"]);
                    if (modelID < 1)
                    {
                        continue;
                    }
                    DataRow[] drs = modelDT.Select("ModelID='" + modelID + "'");
                    //OA不处理,未找到不处理
                    if (drs.Length < 1 || drs[0]["ModelType"].ToString().Equals("12"))
                    {
                        continue;
                    }
                    M_ModelInfo  modelMod = new M_ModelInfo().GetModelFromReader(drs[0]);
                    M_ModelField fieldMod = new M_ModelField().GetModelFromReader(dr);
                    //Pub表会报重复
                    if (fieldBll.IsExists(modelMod.ModelID, fieldMod.FieldName))
                    {
                        continue;
                    }
                    if (DBCenter.DB.Table_Exist(modelMod.TableName)) //互动表可能未创建,忽略
                    {
                        fieldBll.AddModelField(modelMod, fieldMod);
                    }
                }
                SqlHelper.ExecuteSql("TRUNCATE TABLE ZL_ModelField");
                SqlHelper.Insert_Bat(fieldDT, SqlHelper.ConnectionString);
            }
        }
Beispiel #13
0
    /// <summary>
    /// 仅用于添加修改文章如AddContent等, DataTable dt = this.bfield.GetModelFieldList(this.ModelID).Tables[0];
    /// </summary>
    /// <param name="dt">模型字段列表</param>
    /// <param name="page">this.Page</param>
    /// <param name="viewState">ViewState</param>
    /// <param name="content">用于后台生成静态页</param>
    /// <param name="flag">是否需要检测空值</param>
    /// <param name="fields">如不为空,则非其中的字段不允许修改</param>
    public DataTable GetDTFromPage(DataTable dt, Page page, StateBag viewState, IList <string> content = null, bool flag = true, string fields = "")
    {
        B_ModelField mfieldBll = new B_ModelField();

        dt.DefaultView.RowFilter = "IsCopy <>-1";
        dt = dt.DefaultView.ToTable();
        if (content == null)
        {
            content = new List <string>();
        }
        DataTable table = new DataTable();

        table.Columns.Add(new DataColumn("FieldName", typeof(string)));
        table.Columns.Add(new DataColumn("FieldType", typeof(string)));
        table.Columns.Add(new DataColumn("FieldValue", typeof(string)));
        table.Columns.Add(new DataColumn("FieldAlias", typeof(string)));
        foreach (DataRow dr in dt.Rows)
        {
            DataRow fdr = table.NewRow();
            if (!string.IsNullOrEmpty(fields) && !("," + fields + ",").Contains("," + dr["FieldName"] + ","))
            {
                continue;
            }
            try
            {
                if (dr["FieldType"].ToString() == "DoubleDateType")
                {
                    fdr[0] = dr["FieldName"].ToString();
                    fdr[1] = "DoubleDateType";
                    DateTime ti1 = DataConverter.CDate(page.Request.Form["txt" + dr["FieldName"].ToString()]);
                    DateTime ti2 = DataConverter.CDate(page.Request.Form["txt_" + dr["FieldName"].ToString()]);
                    fdr[2] = ti1.ToShortDateString() + "|" + ti2.ToShortDateString();
                    fdr[3] = dr["FieldAlias"];
                    table.Rows.Add(fdr);
                }
                else
                {
                    if (DataConverter.CBool(dr["IsNotNull"].ToString()) && flag)
                    {
                        if (string.IsNullOrEmpty(page.Request.Form["txt_" + dr["FieldName"].ToString()]))
                        {
                            function.WriteErrMsg(dr["FieldAlias"].ToString() + "不能为空!", "javascript:history.go(-1);");
                        }
                    }
                    string[] Sett = dr["Content"].ToString().Split(new char[] { ',' });
                    switch (dr["FieldType"].ToString())
                    {
                    case "FileType":    //其与MultiPicType一样,都是读页面上的隐藏控件,而非<select>中的值,存在一个隐藏字段中
                        #region
                        //ChkFileSize=0,FileSizeField=,MaxFileSize=1024,UploadFileExt=rar|zip|docx|pdf:::是否保存文件大小,保存在大小的字段名,文件上传限制,上传后缀名限制
                        bool   chksize   = DataConverter.CBool(Sett[0].Split(new char[] { '=' })[1]);
                        string sizefield = Sett[1].Split(new char[] { '=' })[1];
                        if (chksize && sizefield != "")
                        {
                            DataRow row1 = table.NewRow();
                            row1[0] = sizefield;
                            row1[1] = "FileSize";
                            row1[2] = page.Request.Form["txt_" + sizefield];
                            row1[3] = dr["FieldAlias"];
                            table.Rows.Add(row1);
                        }
                        //信息由JS控制放置入txt_中
                        DataRow rowr1 = table.NewRow();
                        rowr1[0] = dr["FieldName"];
                        rowr1[1] = "FileType";
                        rowr1[2] = page.Request.Form["txt_" + dr["FieldName"]];
                        rowr1[3] = dr["FieldAlias"];
                        table.Rows.Add(rowr1);
                        #endregion
                        break;

                    case "MultiPicType":
                        #region
                        //ChkThumb=0,ThumbField=,Warter=0,MaxPicSize=1024,PicFileExt=jpg|png|gif|bmp|jpeg:::是否保存缩略图地址,缩略点路径,水印,大小,后缀名限制
                        bool   chkthumb   = DataConverter.CBool(Sett[0].Split(new char[] { '=' })[1]);
                        string ThumbField = Sett[1].Split(new char[] { '=' })[1];
                        if (chkthumb && ThumbField != "")
                        {
                            DataRow row2 = table.NewRow();
                            if (DataConverter.CBool(dr["IsNotNull"].ToString()) && string.IsNullOrEmpty(page.Request.Form["txt_" + ThumbField]))
                            {
                                function.WriteErrMsg(dr["FieldAlias"].ToString() + "的缩略图不能为空!");
                            }
                            row2[0] = ThumbField;
                            row2[1] = "ThumbField";
                            row2[2] = page.Request.Form["txt_" + ThumbField];
                            row2[3] = dr["FieldAlias"];
                            table.Rows.Add(row2);
                        }
                        {
                            DataRow rowr2 = table.NewRow();
                            rowr2[0] = dr["FieldName"];
                            rowr2[1] = "MultiPicType";
                            rowr2[2] = page.Request.Form["txt_" + dr["FieldName"]];
                            rowr2[3] = dr["FieldAlias"];
                            table.Rows.Add(rowr2);
                        }
                        #endregion
                        break;

                    case "TableField":    //库选字段
                        fdr[0] = dr["FieldName"].ToString();
                        fdr[1] = "TableField";
                        string tableval = page.Request.Form["txt_" + dr["FieldName"].ToString()];
                        if (!string.IsNullOrEmpty(tableval))
                        {
                            string[] temparr = tableval.Split(',');
                            tableval = string.Join("$", temparr);
                        }
                        fdr[2] = tableval;
                        fdr[3] = dr["FieldAlias"];
                        table.Rows.Add(fdr);
                        break;

                    case "NumType":
                        #region
                        double value = DataConverter.CDouble(string.IsNullOrEmpty(page.Request.Form["txt_" + dr["FieldName"]]) ? "0" : page.Request.Form["txt_" + dr["FieldName"]]);    //避免空字符串报错
                        //TitleSize=35,NumberType=1,DefaultValue=50,NumSearchType=0,NumRangType=1,NumSearchRang=0-100,NumLenght=0
                        string[] conArr    = dr["Content"].ToString().Split(',');
                        string   NumLenght = "f" + conArr[6].Split('=')[1]; //小数点位数
                        if (conArr[4].Split('=')[1].Equals("1"))            //指定了上限与下限检测,则检测
                        {
                            string range = conArr[5].Split('=')[1];
                            if (!string.IsNullOrEmpty(range) && range.Split('-').Length == 2)    //范围不为空,并正确填了值,才做判断
                            {
                                double minValue = Convert.ToDouble(range.Split('-')[0]);
                                double maxValue = Convert.ToDouble(range.Split('-')[1]);
                                if (value < minValue || value > maxValue)
                                {
                                    function.WriteErrMsg(dr["FieldAlias"] + ":的值不正确,必须大于" + minValue + ",并且小于" + maxValue);
                                }
                            }
                        }
                        fdr[0] = dr["FieldName"].ToString();
                        fdr[1] = "NumType";
                        fdr[2] = value.ToString(NumLenght);
                        fdr[3] = dr["FieldAlias"];
                        table.Rows.Add(fdr);
                        #endregion
                        break;

                    case "Images":    //组图
                        fdr[0] = dr["FieldName"].ToString();
                        fdr[1] = "Images";
                        fdr[2] = (page.Request.Form["txt_" + dr["FieldName"].ToString()] ?? "").Trim(',');
                        table.Rows.Add(fdr);
                        break;

                    case "CameraType":
                        fdr[0] = dr["FieldName"].ToString();
                        fdr[1] = "CameraType";
                        fdr[2] = page.Request.Form[dr["FieldName"] + "_hid"].ToString();
                        table.Rows.Add(fdr);
                        break;

                    case "SqlType":    //文件入库,图片入库,,,图片与文件base64存数据库,一个单独字段标识其
                    {
                        fdr[0] = dr["FieldName"];
                        fdr[1] = dr["FieldType"];
                        fdr[2] = page.Request.Form["FIT_" + dr["FieldName"]];
                        fdr[3] = dr["FieldAlias"];
                        table.Rows.Add(fdr);
                    }
                    break;

                    case "SqlFile":
                    {
                        fdr[0] = dr["FieldName"];
                        fdr[1] = dr["FieldType"];
                        fdr[2] = page.Request.Form["FIT_" + dr["FieldName"]];
                        fdr[3] = dr["FieldAlias"];
                        table.Rows.Add(fdr);
                    }
                    break;

                    case "MapType":
                    {
                        fdr[0] = dr["FieldName"].ToString();
                        fdr[1] = "MapType";
                        fdr[2] = page.Request.Form["txt_" + dr["FieldName"].ToString()];
                        fdr[3] = dr["FieldAlias"];
                        table.Rows.Add(fdr);
                    }
                    break;

                    case "autothumb":
                    {
                        FieldModel fieldMod = new FieldModel(dr["Content"].ToString());
                        string     thumb    = page.Request.Form["txt_" + dr["FieldName"].ToString()];
                        string     topimg   = page.Request.Form["ctl00$Content$ThumImg_Hid"];
                        thumb = ZoomLa.BLL.Helper.ThumbHelper.Thumb_Compress(topimg, thumb, fieldMod.GetValInt("width"), fieldMod.GetValInt("height"));
                        //如thumb为空,但topimg不为空,则生成缩图
                        fdr[0] = dr["FieldName"].ToString();
                        fdr[1] = "auththumb";
                        fdr[2] = thumb;
                        table.Rows.Add(fdr);
                    }
                    break;

                    case "api_qq_mvs":
                    {
                        fdr[0] = dr["FieldName"];
                        fdr[1] = dr["FieldType"];
                        fdr[2] = page.Request.Form["UpMvs_" + dr["FieldName"].ToString()];
                        fdr[3] = dr["FieldAlias"];
                        table.Rows.Add(fdr);
                    }
                    break;

                    default:
                        #region
                        string[] txtftype = "TextType,MultipleTextType,MultipleHtmlType,PullFileType".Split(',');    //文本类型
                        DataRow  row      = table.NewRow();
                        row[0] = dr["FieldName"].ToString();
                        string ftype = dr["FieldType"].ToString();
                        row[1] = ftype;
                        string fvalue = page.Request.Form["txt_" + dr["FieldName"].ToString()];
                        if (!string.IsNullOrEmpty(fvalue) && (txtftype.Where(p => p.Equals(ftype)).ToArray().Length > 0))
                        {
                            if (ftype == "MultipleHtmlType")
                            {
                                content.Add(fvalue);
                            }
                        }
                        switch (ftype)
                        {
                        case "Random":
                            fvalue = page.Request.Form["txt_" + dr["FieldName"].ToString()];
                            break;

                        case "MapType":
                            //fvalue =;
                            break;

                        case "Charts":
                            if (page.Request.Form[dr["FieldName"].ToString()] == null || page.Request.Form[dr["FieldName"].ToString()] == "0")
                            {
                                fvalue = "0";
                            }
                            else
                            {
                                fvalue = page.Request.Form[dr["FieldName"].ToString()];
                            }
                            break;

                        case "SqlType":
                            if (page.Request.Form["txt_" + dr["FieldName"].ToString()] == null || page.Request.Form["txt_" + dr["FieldName"].ToString()] == "")
                            {
                                fvalue = "";
                            }
                            else
                            {
                                fvalue = page.Request.Form["txt_" + dr["FieldName"].ToString()];
                            }
                            break;

                        case "SqlFile":
                            if (page.Request.Form["txt_" + dr["FieldName"].ToString()] == null || page.Request.Form["txt_" + dr["FieldName"].ToString()] == "")
                            {
                                fvalue = "";
                            }
                            else
                            {
                                fvalue = page.Request.Form["txt_" + dr["FieldName"].ToString()];
                            }
                            break;
                        }
                        string strUrl  = HttpContext.Current.Request.Url.Authority.ToString();
                        string serPath = page.Request.PhysicalApplicationPath;
                        if (SiteConfig.SiteOption.IsSaveRemoteImage)
                        {
                            //保存远程图片功能
                            if (dr["FieldName"].ToString() == "content")
                            {
                                //获取img路径列表
                                List <string> remoteImageList = mfieldBll.GetImgUrl(fvalue);
                                fvalue = page.Request.Form["txt_content"];
                                foreach (string str in remoteImageList)
                                {
                                    string imgurl = page.Request.PhysicalApplicationPath + WaterModuleConfig.WaterConfig.imgLogo;
                                    //新图片名称
                                    string newImgname;
                                    string Patha;
                                    mfieldBll.SaveGz(str, out newImgname, out Patha, viewState["NodeDir"].ToString());
                                    string imgInfo = "";
                                    //保存远程图片,并获取图片详细名称
                                    if (str.Substring(0, 7) == "http://" && !str.Contains(strUrl) && !str.Contains(SiteConfig.SiteInfo.SiteUrl))
                                    {
                                        try
                                        {
                                            imgInfo = mfieldBll.downRemoteImg(page.Server.MapPath(Patha), str, newImgname, Patha, imgurl);
                                            fvalue  = fvalue.Replace(str.ToString(), imgInfo);
                                        }
                                        catch (Exception)
                                        {
                                            imgInfo = str;
                                            fvalue  = fvalue.Replace(str.ToString(), imgInfo);
                                        }
                                    }
                                }
                            }
                        }
                        row[2] = fvalue;
                        row[3] = dr["FieldAlias"];
                        table.Rows.Add(row);
                        #endregion
                        break;
                    }
                }
            }
            catch (Exception ex) { function.WriteErrMsg("自定义字段[" + dr["FieldName"] + "(" + dr["FieldType"] + ")]出错,原因:" + ex.Message); }
        }
        return(table);
    }
Beispiel #14
0
        //数据导入
        public bool ImportProducts(DataTable dt, int ModelID, int NodeID)
        {
            B_ModelField b_ModelField = new B_ModelField();
            DataTable    dtModelField = b_ModelField.GetModelFieldList(ModelID);
            //建立从表存放当前信息
            DataTable table = new DataTable();

            table.Columns.Add(new DataColumn("FieldName", typeof(string)));
            table.Columns.Add(new DataColumn("FieldType", typeof(string)));
            table.Columns.Add(new DataColumn("FieldValue", typeof(string)));
            table.Columns.Add(new DataColumn("ShopmodelID", typeof(string)));
            table.Columns.Add(new DataColumn("FieldAlias", typeof(string)));

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                if (dtModelField != null && dtModelField.Rows.Count > 0)
                {
                    foreach (DataRow dr in dtModelField.Rows)
                    {
                        DataRow row = table.NewRow();
                        row[0] = dr["FieldName"].ToString();
                        row[1] = dr["FieldType"].ToString();
                        row[4] = dr["FieldAlias"].ToString();
                        try
                        {
                            row[2] = dt.Rows[i][row[4].ToString()];
                        }
                        catch
                        {
                            return(false);
                        }
                        table.Rows.Add(row);
                    }
                }
                //基础表内容

                B_Model     modBll = new B_Model();
                M_ModelInfo modMod = modBll.SelReturnModel(ModelID);
                //主表内容
                M_Product m_Product = new M_Product();
                m_Product.ModelID   = ModelID;
                m_Product.Nodeid    = NodeID;
                m_Product.TableName = modMod.TableName;
                m_Product.ProCode   = dt.Rows[i]["商品编号"].ToString();
                m_Product.BarCode   = dt.Rows[i]["条形码"].ToString();
                m_Product.Proname   = dt.Rows[i]["商品名称"].ToString();
                m_Product.Kayword   = dt.Rows[i]["关键字"].ToString();
                m_Product.ProUnit   = dt.Rows[i]["商品单位"].ToString();
                try
                {
                    m_Product.Weight = Convert.ToInt32(dt.Rows[i]["商品重量"].ToString() == "" ? 0 : dt.Rows[i]["商品重量"]);
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[商品重量]格式不正确");
                }
                m_Product.ProClass = 1;
                m_Product.Sales    = Convert.ToInt32(dt.Rows[i]["销售状态(1)"].ToString() == "1" ? 1 : 0);
                m_Product.Istrue   = Convert.ToInt32(dt.Rows[i]["属性设置(1)"].ToString() == "1" ? 1 : 0);
                try
                {
                    m_Product.AllClickNum = Convert.ToInt32(dt.Rows[i]["点击数"].ToString() == "" ? 0 : dt.Rows[i]["点击数"]);
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[点击数]格式不正确");
                }
                try
                {
                    m_Product.UpdateTime = Convert.ToDateTime(dt.Rows[i]["更新时间"]);
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[更新时间]格式不正确");
                }
                m_Product.ModeTemplate = "";

                ///22222222222222222222
                m_Product.Proinfo    = dt.Rows[i]["商品简介"].ToString();
                m_Product.Procontent = dt.Rows[i]["详细介绍"].ToString();
                m_Product.Clearimg   = dt.Rows[i]["商品清晰图"].ToString();
                m_Product.Thumbnails = dt.Rows[i]["商品缩略图"].ToString();

                ///33333333333333333333
                m_Product.Producer = dt.Rows[i]["生产商"].ToString();
                m_Product.Brand    = dt.Rows[i]["品牌/商标"].ToString();
                m_Product.Allowed  = Convert.ToInt32(dt.Rows[i]["缺货时允许购买(0)"].ToString() == "0" ? 0 : 1);
                try
                {
                    m_Product.Quota = Convert.ToInt32(dt.Rows[i]["限购数量"].ToString() == "" ? 0 : dt.Rows[i]["限购数量"]);
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[限购数量]格式不正确");
                }
                try
                {
                    m_Product.DownQuota = Convert.ToInt32(dt.Rows[i]["最低购买数量"].ToString() == "" ? 0 : dt.Rows[i]["最低购买数量"]);
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[最低购买数量]格式不正确");
                }
                m_Product.Stock = 0;//库存数量

                try
                {
                    m_Product.ShiPrice = Convert.ToDouble(dt.Rows[i]["市场参考价"].ToString() == "" ? 0 : dt.Rows[i]["市场参考价"]);
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[市场参考价]格式不正确");
                }
                try
                {
                    m_Product.LinPrice = Convert.ToDouble(dt.Rows[i]["当前零售价"].ToString() == "" ? 0 : dt.Rows[i]["当前零售价"]);
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[当前零售价]格式不正确");
                }
                try
                {
                    m_Product.AddTime = DateTime.Parse(dt.Rows[i]["创建时间"].ToString());
                }
                catch (Exception)
                {
                    throw new Exception("第" + (i + 1) + "行,字段[创建时间]格式不正确");
                }

                try
                {
                    m_Product.StockDown = 0;
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[库存报警下限]格式不正确");
                }
                try
                {
                    m_Product.Rateset = 1;
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[税率设置]格式不正确");
                }
                try
                {
                    m_Product.Rate = 0;
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[商品税率]格式不正确");
                }
                try
                {
                    m_Product.Dengji = 3;
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[商品推荐等级]格式不正确");
                }

                try
                {
                    m_Product.ShiPrice = Convert.ToDouble(dt.Rows[i]["市场参考价"].ToString() == "" ? 0 : dt.Rows[i]["市场参考价"]);
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[市场参考价]格式不正确");
                }
                try
                {
                    m_Product.LinPrice = Convert.ToDouble(dt.Rows[i]["当前零售价"].ToString() == "" ? 0 : dt.Rows[i]["当前零售价"]);
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[当前零售价]格式不正确");
                }
                //m_Product.UserPrice = dt.Rows[i]["会员组价格"].ToString();
                m_Product.UserPrice = "0";
                try
                {
                    m_Product.Recommend = 0;
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[打折优惠率]格式不正确");
                }
                try
                {
                    m_Product.PointVal = 0;
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[积分价格]格式不正确");
                }
                m_Product.Wholesales = 0;//允许批发
                try
                {
                    m_Product.Wholesaleone = 1;
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[允许单独销售]格式不正确");
                }
                try
                {
                    m_Product.Largess = 0;
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[设置为礼品]格式不正确");
                }

                ///55555555555555555555
                try
                {
                    m_Product.IntegralNum = 0;
                }
                catch
                {
                    throw new Exception("第" + (i + 1) + "行,字段[购物积分]格式不正确");
                }

                Add(table, m_Product);
                table.Rows.Clear();//清除子表中的数据
            }
            return(true);
        }
Beispiel #15
0
        public static DataTable GetDTFromMVC(DataTable dt, HttpRequest req, bool flag = true)
        {
            B_ModelField mfieldBll = new B_ModelField();

            dt.DefaultView.RowFilter = "IsCopy <>-1";
            dt = dt.DefaultView.ToTable();
            DataTable table = new DataTable();

            table.Columns.Add(new DataColumn("FieldName", typeof(string)));
            table.Columns.Add(new DataColumn("FieldType", typeof(string)));
            table.Columns.Add(new DataColumn("FieldValue", typeof(string)));
            table.Columns.Add(new DataColumn("FieldAlias", typeof(string)));
            foreach (DataRow dr in dt.Rows)
            {
                DataRow fdr = table.NewRow();
                try
                {
                    fdr[0] = dr["FieldName"].ToString();
                    fdr[1] = dr["FieldType"].ToString();
                    fdr[3] = DataConverter.CStr(dr["FieldAlias"]);
                    if (dr["FieldType"].ToString() == "DoubleDateType")
                    {
                        DateTime ti1 = DataConverter.CDate(req.Form["txt" + dr["FieldName"].ToString()]);
                        DateTime ti2 = DataConverter.CDate(req.Form["txt_" + dr["FieldName"].ToString()]);
                        fdr[2] = ti1.ToShortDateString() + "|" + ti2.ToShortDateString();
                    }
                    else
                    {
                        if (DataConverter.CBool(dr["IsNotNull"].ToString()) && flag)
                        {
                            if (string.IsNullOrEmpty(req.Form["txt_" + dr["FieldName"].ToString()]))
                            {
                                throw new Exception("[" + dr["FieldAlias"] + "]不能为空!");
                            }
                        }
                        string[] Sett = dr["Content"].ToString().Split(new char[] { ',' });
                        switch (dr["FieldType"].ToString())
                        {
                        case "FileType":    //其与MultiPicType一样,都是读页面上的隐藏控件,而非<select>中的值,存在一个隐藏字段中
                            #region
                            //ChkFileSize=0,FileSizeField=,MaxFileSize=1024,UploadFileExt=rar|zip|docx|pdf:::是否保存文件大小,保存在大小的字段名,文件上传限制,上传后缀名限制
                            bool   chksize   = DataConverter.CBool(Sett[0].Split(new char[] { '=' })[1]);
                            string sizefield = Sett[1].Split(new char[] { '=' })[1];
                            //if (chksize && sizefield != "")
                            //{
                            //    fdr[0] = sizefield;
                            //    fdr[1] = "FileSize";
                            //    fdr[2] = req.Form["txt_" + sizefield];
                            //    fdr[3] = dr["FieldAlias"];
                            //}
                            //信息由JS控制放置入txt_中
                            fdr[2] = req.Form["txt_" + dr["FieldName"]];
                            #endregion
                            break;

                        case "MultiPicType":
                            #region
                            //ChkThumb=0,ThumbField=,Warter=0,MaxPicSize=1024,PicFileExt=jpg|png|gif|bmp|jpeg:::是否保存缩略图地址,缩略点路径,水印,大小,后缀名限制
                            bool   chkthumb   = DataConverter.CBool(Sett[0].Split(new char[] { '=' })[1]);
                            string ThumbField = Sett[1].Split(new char[] { '=' })[1];
                            if (chkthumb && ThumbField != "")    //存储缩图
                            {
                                DataRow row2 = table.NewRow();
                                if (DataConverter.CBool(dr["IsNotNull"].ToString()) && string.IsNullOrEmpty(req.Form["txt_" + ThumbField]))
                                {
                                    throw new Exception(dr["FieldAlias"].ToString() + "的缩略图不能为空!");
                                }
                                row2[0] = ThumbField;
                                row2[1] = "ThumbField";
                                row2[2] = req.Form["txt_" + ThumbField];
                                row2[3] = dr["FieldAlias"];
                                table.Rows.Add(row2);
                            }
                            {
                                fdr[0] = dr["FieldName"];
                                fdr[1] = "MultiPicType";
                                fdr[2] = req.Form["txt_" + dr["FieldName"]];
                                fdr[3] = dr["FieldAlias"];
                            }
                            #endregion
                            break;

                        case "TableField":    //库选字段
                            string tableval = req.Form["txt_" + dr["FieldName"].ToString()];
                            if (!string.IsNullOrEmpty(tableval))
                            {
                                string[] temparr = tableval.Split(',');
                                tableval = string.Join("$", temparr);
                            }
                            fdr[2] = tableval;
                            break;

                        case "NumType":
                            #region
                            double value = DataConverter.CDouble(string.IsNullOrEmpty(GetParam(req, "txt_" + dr["FieldName"])) ? "0" : GetParam(req, "txt_" + dr["FieldName"]));   //避免空字符串报错
                            //TitleSize=35,NumberType=1,DefaultValue=50,NumSearchType=0,NumRangType=1,NumSearchRang=0-100,NumLenght=0
                            string[] conArr    = dr["Content"].ToString().Split(',');
                            string   NumLenght = "f" + conArr[6].Split('=')[1]; //小数点位数
                            if (conArr[4].Split('=')[1].Equals("1"))            //指定了上限与下限检测,则检测
                            {
                                string range = conArr[5].Split('=')[1];
                                if (!string.IsNullOrEmpty(range) && range.Split('-').Length == 2)    //范围不为空,并正确填了值,才做判断
                                {
                                    double minValue = Convert.ToDouble(range.Split('-')[0]);
                                    double maxValue = Convert.ToDouble(range.Split('-')[1]);
                                    if (value < minValue || value > maxValue)
                                    {
                                        throw new Exception(dr["FieldAlias"] + ":的值不正确,必须大于" + minValue + ",并且小于" + maxValue);
                                    }
                                }
                            }
                            fdr[2] = value.ToString(NumLenght);
                            #endregion
                            break;

                        case "Images":    //组图
                            fdr[2] = (GetParam(req, "txt_" + dr["FieldName"].ToString()) ?? "").Trim(',');
                            break;

                        case "CameraType":
                            fdr[2] = req.Form[dr["FieldName"] + "_hid"].ToString();
                            break;

                        case "SqlType":    //文件入库,图片入库,,,图片与文件base64存数据库,一个单独字段标识其
                        {
                            fdr[2] = req.Form["FIT_" + dr["FieldName"]];
                        }
                        break;

                        case "SqlFile":
                        {
                            fdr[2] = req.Form["FIT_" + dr["FieldName"]];
                        }
                        break;

                        case "MapType":
                        {
                            fdr[2] = req.Form["txt_" + dr["FieldName"].ToString()];
                        }
                        break;

                        case "autothumb":
                        {
                            FieldModel fieldMod = new FieldModel(dr["Content"].ToString());
                            string     thumb    = req.Form["txt_" + dr["FieldName"].ToString()];
                            string     topimg   = req.Form["ThumImg_Hid"];
                            //如thumb为空,但topimg不为空,则生成缩图
                            fdr[0] = dr["FieldName"].ToString();
                            fdr[1] = "auththumb";
                            fdr[2] = "";
                        }
                        break;

                        case "api_qq_mvs":
                        {
                            fdr[2] = req.Form["UpMvs_" + dr["FieldName"].ToString()];
                        }
                        break;

                        case "PicType":
                        {
                            string fvalue = DataConverter.CStr(req.Form[dr["FieldName"] + "_t"]);
                            fdr[2] = fvalue.Replace(SiteConfig.SiteOption.UploadDir, "");
                        }
                        break;

                        default:
                            #region
                        {
                            string fvalue = req.Form["txt_" + dr["FieldName"].ToString()];
                            switch (dr["FieldType"].ToString())
                            {
                            //case "Random":
                            //    fvalue = req.Form["txt_" + dr["FieldName"].ToString()];
                            //    break;
                            case "MapType":
                                //fvalue =;
                                break;

                            case "Charts":
                                fvalue = "0";
                                break;

                            case "SqlType":
                                fvalue = "";
                                break;

                            case "SqlFile":
                                fvalue = "";
                                break;
                            }
                            fdr[2] = fvalue;
                        }
                            #endregion
                            break;
                        } //for end;
                    }     //else end;
                }
                catch (Exception ex)
                {
                    if (!ex.Message.Contains("正在中止线程"))
                    {
                        throw new Exception("[" + dr["FieldAlias"] + "][" + dr["FieldName"] + "(" + dr["FieldType"] + ")],原因:" + ex.Message);
                    }
                }
                fdr[2] = StringHelper.Strip_Script(DataConverter.CStr(fdr[2]));
                table.Rows.Add(fdr);
            }//for end;
            return(table);
        }
Beispiel #16
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!string.IsNullOrEmpty(base.Request.QueryString["ItemID"]))
        {
            B_Model      bmode = new B_Model();
            B_Node       bnode = new B_Node();
            B_ModelField mfll  = new B_ModelField();

            int CPage = string.IsNullOrEmpty(base.Request.QueryString["p"]) ? 1 : DataConverter.CLng(base.Request.QueryString["p"]);
            if (CPage <= 0)
            {
                CPage = 1;
            }
            M_CommonData ItemInfo = bcontent.GetCommonData(ItemID);
            if (ItemInfo.IsNull)
            {
                Response.Write("[产生错误的可能原因:内容信息不存在或未开放!]");
            }
            M_ModelInfo modelinfo = bmode.GetModelById(ItemInfo.ModelID);

            M_Templata Nodeinfo    = tll.Getbyid(ItemInfo.NodeID);
            string     TemplateDir = GetTempPath(ItemInfo, Nodeinfo, pageID);
            if (string.IsNullOrEmpty(TemplateDir))
            {
                Response.Write("[产生错误的可能原因:该内容所属模型未指定模板!]");
            }
            else
            {
                int Cpage = 1;
                if (string.IsNullOrEmpty(base.Request.QueryString["p"]))
                {
                    Cpage = 1;
                }
                else
                {
                    Cpage = DataConverter.CLng(base.Request.QueryString["p"]);
                }
                string ContentHtml = "";
                try
                {
                    ContentHtml = FileSystemObject.ReadFile(TemplateDir);
                }
                catch
                {
                    Response.Write("[产生错误的可能原因:该内容所属模型未指定模板!]");
                }

                ContentHtml = this.bll.CreateHtml(ContentHtml, Cpage, ItemID, 0);

                /* --------------------判断是否分页 并做处理------------------------------------------------*/
                if (!string.IsNullOrEmpty(ContentHtml))
                {
                    string infoContent = ""; //进行处理的内容字段
                    string pagelabel   = "";
                    string infotmp     = "";
                    #region 分页符分页
                    string pattern = @"{\#PageCode}([\s\S])*?{\/\#PageCode}";  //查找要分页的内容
                    if (Regex.IsMatch(ContentHtml, pattern, RegexOptions.IgnoreCase))
                    {
                        infoContent = Regex.Match(ContentHtml, pattern, RegexOptions.IgnoreCase).Value;
                        infotmp     = infoContent;
                        infoContent = infoContent.Replace("{#PageCode}", "").Replace("{/#PageCode}", "");
                        //查找分页标签
                        //bool flag = false;
                        bool   isPage   = false;
                        string pattern1 = @"{ZL\.Page([\s\S])*?\/}";
                        if (Regex.IsMatch(ContentHtml, pattern1, RegexOptions.IgnoreCase))
                        {
                            pagelabel = Regex.Match(ContentHtml, pattern1, RegexOptions.IgnoreCase).Value;
                            isPage    = true;
                        }
                        if (isPage)
                        {
                            if (string.IsNullOrEmpty(infoContent)) //没有设定要分页的字段内容
                            {
                                ContentHtml = ContentHtml.Replace(pagelabel, "");
                            }
                            else   //进行内容分页处理
                            {
                                //文件名
                                string file1 = "Content.aspx?ID=" + ItemID.ToString();
                                //取分页标签处理结果 返回字符串数组 根据数组元素个数生成几页
                                string         ilbl       = pagelabel.Replace("{ZL.Page ", "").Replace("/}", "").Replace(" ", ",");
                                string         lblContent = "";
                                IList <string> ContentArr = new List <string>();
                                if (string.IsNullOrEmpty(ilbl))
                                {
                                    lblContent = "{loop}<a href=\"{$pageurl/}\">{$pageid/}</a>$$$<b>[{$pageid/}]</b>{/loop}"; //默认格式的分页导航
                                    ContentArr = this.bll.GetContentPage(infoContent);
                                }
                                else
                                {
                                    string[] paArr = ilbl.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                                    if (paArr.Length == 0)
                                    {
                                        lblContent = "{loop}<a href=\"{$pageurl/}\">{$pageid/}</a>$$$<b>[{$pageid/}]</b>{/loop}"; //默认格式的分页导航
                                        ContentArr = this.bll.GetContentPage(infoContent);
                                    }
                                    else
                                    {
                                        string  lblname = paArr[0].Split(new char[] { '=' })[1].Replace("\"", "");
                                        B_Label blbl    = new B_Label();
                                        lblContent = blbl.GetLabelXML(lblname).Content;
                                        if (string.IsNullOrEmpty(lblContent))
                                        {
                                            lblContent = "{loop}<a href=\"{$pageurl/}\">{$pageid/}</a>$$$<b>[{$pageid/}]</b>{/loop}"; //默认格式的分页导航
                                        }
                                        ContentArr = this.bll.GetContentPage(infoContent);
                                    }
                                }

                                if (ContentArr.Count > 0) //存在分页数据
                                {
                                    ContentHtml = ContentHtml.Replace(infotmp, ContentArr[CPage - 1]);
                                    ContentHtml = ContentHtml.Replace(pagelabel, this.bll.GetPage(lblContent, ItemID, CPage, ContentArr.Count, ContentArr.Count));
                                }
                                else
                                {
                                    ContentHtml = ContentHtml.Replace(infotmp, infoContent);
                                    ContentHtml = ContentHtml.Replace(pagelabel, "");
                                }
                            }
                        }
                        else  //没有分页标签
                        {
                            //如果设定了分页内容字段 将该字段内容的分页标志清除
                            if (!string.IsNullOrEmpty(infoContent))
                            {
                                ContentHtml = ContentHtml.Replace(infotmp, infoContent);
                            }
                        }
                    }
                    #endregion

                    pattern = @"{\#Content}([\s\S])*?{\/\#Content}";  //查找要分页的内容
                    if (Regex.IsMatch(ContentHtml, pattern, RegexOptions.IgnoreCase))
                    {
                        infoContent = Regex.Match(ContentHtml, pattern, RegexOptions.IgnoreCase).Value;
                        infotmp     = infoContent;
                        infoContent = infoContent.Replace("{#Content}", "").Replace("{/#Content}", "");

                        //查找分页标签
                        //bool flag = false;
                        bool   isPage   = false;
                        string pattern1 = @"{ZL\.Page([\s\S])*?\/}";
                        if (Regex.IsMatch(ContentHtml, pattern1, RegexOptions.IgnoreCase))
                        {
                            pagelabel = Regex.Match(ContentHtml, pattern1, RegexOptions.IgnoreCase).Value;
                            isPage    = true;
                        }
                        if (isPage)
                        {
                            if (string.IsNullOrEmpty(infoContent)) //没有设定要分页的字段内容
                            {
                                ContentHtml = ContentHtml.Replace(pagelabel, "");
                            }
                            else   //进行内容分页处理
                            {
                                //文件名
                                string file1 = "Content.aspx?ID=" + ItemID.ToString();
                                //取分页标签处理结果 返回字符串数组 根据数组元素个数生成几页
                                string         ilbl       = pagelabel.Replace("{ZL.Page ", "").Replace("/}", "").Replace(" ", ",");
                                string         lblContent = "";
                                int            NumPerPage = 500;
                                IList <string> ContentArr = new List <string>();

                                if (string.IsNullOrEmpty(ilbl))
                                {
                                    lblContent = "{loop}<a href=\"{$pageurl/}\">{$pageid/}</a>$$$<b>[{$pageid/}]</b>{/loop}"; //默认格式的分页导航
                                    ContentArr = this.bll.GetContentPage(infoContent, NumPerPage);
                                }
                                else
                                {
                                    string[] paArr = ilbl.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                                    if (paArr.Length == 0)
                                    {
                                        lblContent = "{loop}<a href=\"{$pageurl/}\">{$pageid/}</a>$$$<b>[{$pageid/}]</b>{/loop}"; //默认格式的分页导航
                                        ContentArr = this.bll.GetContentPage(infoContent, NumPerPage);
                                    }
                                    else
                                    {
                                        string lblname = paArr[0].Split(new char[] { '=' })[1].Replace("\"", "");
                                        if (paArr.Length > 1)
                                        {
                                            NumPerPage = DataConverter.CLng(paArr[1].Split(new char[] { '=' })[1].Replace("\"", ""));
                                        }
                                        B_Label blbl = new B_Label();
                                        lblContent = blbl.GetLabelXML(lblname).Content;
                                        if (string.IsNullOrEmpty(lblContent))
                                        {
                                            lblContent = "{loop}<a href=\"{$pageurl/}\">{$pageid/}</a>$$$<b>[{$pageid/}]</b>{/loop}"; //默认格式的分页导航
                                        }
                                        ContentArr = this.bll.GetContentPage(infoContent, NumPerPage);
                                    }
                                }
                                if (ContentArr.Count > 0) //存在分页数据
                                {
                                    ContentHtml = ContentHtml.Replace(infotmp, ContentArr[CPage - 1]);
                                    ContentHtml = ContentHtml.Replace(pagelabel, this.bll.GetPage(lblContent, ItemID, CPage, ContentArr.Count, NumPerPage));
                                }
                                else
                                {
                                    ContentHtml = ContentHtml.Replace(infotmp, infoContent);
                                    ContentHtml = ContentHtml.Replace(pagelabel, "");
                                }
                            }
                        }
                        else  //没有分页标签
                        {
                            //如果设定了分页内容字段 将该字段内容的分页标志清除
                            if (!string.IsNullOrEmpty(infoContent))
                            {
                                ContentHtml = ContentHtml.Replace(infotmp, infoContent);
                            }
                        }
                    }
                }
                string patterns   = @"{ZL\.Page([\s\S])*?\/}";
                string pagelabels = Regex.Match(ContentHtml, patterns, RegexOptions.IgnoreCase).Value;
                if (pagelabels != "")
                {
                    ContentHtml = ContentHtml.Replace(pagelabels, "");
                }
                /*--------------------- 分页内容处理结束-------------------------------------------------------------------------*/
                Response.Write(ContentHtml);
            }
        }
        else
        {
            Response.Write("[产生错误的可能原因:您访问的内容信息不存在!访问规则:PageContent.aspx?ItemID=信息ID]");
        }
    }