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

📄 classadd.ascx.cs

📁 这是我编的一小软件。请等级等待指教。呵呵。ASP的
💻 CS
字号:
namespace Seaskyer.WebApp.skyNews.Pages.AdminMSC
{
	using System;
	using System.Collections;
	using System.Data;
	using System.Drawing;
	using System.Web;
	using System.Web.UI.WebControls;
	using System.Web.UI.HtmlControls;
	using Seaskyer.Strings;

	/// <summary>
	///		ClassAdd : 添加新闻分类。
	/// </summary>
	public class ClassAdd : basePage
	{
		protected System.Web.UI.HtmlControls.HtmlInputHidden classid;
		protected TextBox className, cUrl, cBindNum, HeadCode, PageCode, FootCode;
		protected DropDownList parentID, listStyle, cTempid, newsTempID;
		protected RadioButtonList canAdd, cInBar, cInNav, cBind;
		protected ListBox allowGroups;
		protected System.Web.UI.WebControls.Label label1;
		protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator;
		protected System.Web.UI.WebControls.RegularExpressionValidator RegularExpressionValidator;
		protected System.Web.UI.WebControls.RequiredFieldValidator Requiredfieldvalidator2;
		protected System.Web.UI.WebControls.RequiredFieldValidator Requiredfieldvalidator1;
		protected System.Web.UI.WebControls.RegularExpressionValidator Regularexpressionvalidator1;
		protected System.Web.UI.WebControls.DropDownList linkColor;
		protected System.Web.UI.WebControls.DropDownList targetMethod;
		protected System.Web.UI.WebControls.Button Button1;

		private void Page_Load(object sender, System.EventArgs e)
		{
			if( Page.IsPostBack ) return;

			#region 加载初始化列表

			DataTable dt = new DataTable();


			// 采用模板 (分类页)
			dt = bind.returnDataTable(user.templateDt, "type = 'list.ascx'", "", 0);
			for( int i = 0; i < dt.Rows.Count; i++ )
			{
				cTempid.Items.Add( new ListItem(dt.Rows[i]["Name"].ToString(), dt.Rows[i]["ID"].ToString()) );
			}
			dt.Clear();


			// 采用模板 (信息页)
			dt = bind.returnDataTable(user.templateDt, "type = 'show.ascx'", "", 0);
			for( int i = 0; i < dt.Rows.Count; i++ )
			{
				newsTempID.Items.Add( new ListItem(dt.Rows[i]["Name"].ToString(), dt.Rows[i]["ID"].ToString()) );
			}
			dt.Clear();


			// 标题样式
			dp.CommandText = cmd["TitleCss", "SELECT"];
			dt = dp.DataTableSQL();
			for( int i = 0; i < dt.Rows.Count; i++ )
			{
				linkColor.Items.Add( new ListItem(dt.Rows[i]["CssName"].ToString(), dt.Rows[i]["CssContent"].ToString()) );
			}
			dt.Clear();


			// 用户组
			dp.CommandText = cmd["UserGroup", "SELECT"];
			dt = dp.DataTableSQL();
			for( int i = 0; i < dt.Rows.Count; i++ )
			{
				allowGroups.Items.Add(new ListItem(dt.Rows[i]["GroupName"].ToString(), dt.Rows[i]["GroupID"].ToString()));
			}
			dt.Clear();

			dt.Dispose();
			#endregion


			if( !user.CheckValiable(Request.QueryString["classid"]) )
			{
				#region 添加页面加载
				Button1.Text	= " 添 加 ";
				cBindNum.Text = config["cBindNum"];

				// 分类列表
				ci.GetClassDropDownListOptions(parentID, "", "");

				#endregion
			}
			else
			{
				
				#region 修改页面加载
				Button1.Text	= " 修 改 ";

				classid.Value = Request.QueryString["classid"];

				string allowGroupString = "";

				// 提取信息
				dp.CommandText = cmd["aClass", "SELECT_INDEX"];
				dp.Parameter.Add("classID",	classid.Value);
				dt = dp.DataTableSQL();

				if( dt.Rows.Count == 1 )
				{
					#region 开始赋值
					className.Text		= dt.Rows[0]["className"].ToString();
					// 分类列表
					ci.GetClassDropDownListOptions(parentID, dt.Rows[0]["ParentID"].ToString(), "");
					cUrl.Text			= dt.Rows[0]["CustomUrl"].ToString();
					cBindNum.Text		= dt.Rows[0]["cBindNum"].ToString();
					HeadCode.Text		= dt.Rows[0]["headCode"].ToString();
					PageCode.Text		= dt.Rows[0]["pageCode"].ToString();
					FootCode.Text		= dt.Rows[0]["footCode"].ToString();
					allowGroupString	= dt.Rows[0]["allowGroups"].ToString();


					for(int i = 0; i < linkColor.Items.Count; i++)
					{
						if( dt.Rows[0]["TitleCss"].ToString() == linkColor.Items[i].Value ) linkColor.Items[i].Selected = true;
						else { linkColor.Items[i].Selected = false; }
					}

					for(int i = 0; i < listStyle.Items.Count; i++)
					{
						if( dt.Rows[0]["listStyle"].ToString() == listStyle.Items[i].Value ) listStyle.Items[i].Selected = true;
						else { listStyle.Items[i].Selected = false; }
					}

					for(int i = 0; i < cTempid.Items.Count; i++)
					{
						if( dt.Rows[0]["cTempid"].ToString() == cTempid.Items[i].Value ) cTempid.Items[i].Selected = true;
						else { cTempid.Items[i].Selected = false; }
					}

					for(int i = 0; i < newsTempID.Items.Count; i++)
					{
						if( dt.Rows[0]["newsTempID"].ToString() == newsTempID.Items[i].Value ) newsTempID.Items[i].Selected = true;
						else { newsTempID.Items[i].Selected = false; }
					}


					for(int i = 0; i < targetMethod.Items.Count; i++)
					{
						if( dt.Rows[0]["targetMethod"].ToString() == targetMethod.Items[i].Value ) targetMethod.Items[i].Selected = true;
						else { targetMethod.Items[i].Selected = false; }
					}

					for(int i = 0; i < canAdd.Items.Count; i++)
					{
						if( dt.Rows[0]["EnableAdd"].ToString() == canAdd.Items[i].Value ) canAdd.Items[i].Selected = true;
						else { canAdd.Items[i].Selected = false; }
					}

					for(int i = 0; i < cInBar.Items.Count; i++)
					{
						if( dt.Rows[0]["cInBar"].ToString() == cInBar.Items[i].Value ) cInBar.Items[i].Selected = true;
						else { cInBar.Items[i].Selected = false; }
					}

					for(int i = 0; i < cInNav.Items.Count; i++)
					{
						if( dt.Rows[0]["cInNav"].ToString() == cInNav.Items[i].Value ) cInNav.Items[i].Selected = true;
						else { cInNav.Items[i].Selected = false; }
					}

					for(int i = 0; i < cBind.Items.Count; i++)
					{
						if( dt.Rows[0]["cBind"].ToString() == cBind.Items[i].Value ) cBind.Items[i].Selected = true;
						else { cBind.Items[i].Selected = false; }
					}

					for( int i = 0; i < allowGroups.Items.Count; i++ )
					{
						if( Function.InArray(allowGroups.Items[i].Value, allowGroupString, ',') ) allowGroups.Items[i].Selected = true;
						else
							allowGroups.Items[i].Selected = false;
					}
					#endregion
				}
				dt.Clear();
				dt.Dispose();


				#endregion
			}
		}

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		///		设计器支持所需的方法 - 不要使用代码编辑器
		///		修改此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion

		protected void Button1_OnClick(object sender, System.EventArgs e)
		{
			#region "检测分类名在同级类中是否存在"


			#endregion

			if( !user.CheckValiable(Request.QueryString["classid"]) )
			{
				
				
				#region "开始添加分类信息"

				//int parentid = int.Parse(parentID.SelectedValue);
				dp.CommandText = "SELECT MAX(SortID) FROM [aClass] WHERE ParentID = @ParentID";
				dp.Parameter.Add( "ParentID",		parentID.SelectedValue );
				string sortID = dp.ReaderSQL();

				sortID = (sortID == "" ? "0" : sortID);

				dp.CommandText = cmd["aClass", "INSERT"];
				// 开始为参数赋值
				dp.Parameter.Add( "ClassName",		className.Text );
				dp.Parameter.Add( "ParentID",		parentID.SelectedValue );
				dp.Parameter.Add( "SortID",			int.Parse(sortID) + 1 );
				dp.Parameter.Add( "CustomUrl",		cUrl.Text);
				dp.Parameter.Add( "TitleCss",		linkColor.SelectedValue);
				dp.Parameter.Add( "listStyle",		listStyle.SelectedValue);
				dp.Parameter.Add( "cTempid",		cTempid.SelectedValue);
				dp.Parameter.Add( "newsTempID",		newsTempID.SelectedValue);
				dp.Parameter.Add( "targetMethod",	targetMethod.SelectedValue);
				dp.Parameter.Add( "EnableAdd",		canAdd.SelectedValue);
				dp.Parameter.Add( "cInBar",			cInBar.SelectedValue);
				dp.Parameter.Add( "cInNav",			cInNav.SelectedValue);
				dp.Parameter.Add( "cBind",			cBind.SelectedValue);
				dp.Parameter.Add( "cBindNum",		cBindNum.Text);
				dp.Parameter.Add( "allowGroups",	user.ListBox_SelectedValues(allowGroups));
				dp.Parameter.Add( "headCode",		HeadCode.Text);
				dp.Parameter.Add( "pageCode",		PageCode.Text);
				dp.Parameter.Add( "footCode",		FootCode.Text);

				if(dp.NonQuerySQL() == 1)
				{
					label1.Text = "分类“" + className.Text + "”添加成功!";label1.ForeColor = Color.BlueViolet;

					#region "处理添加后的信息"

/*
					//Response.Write(pOrderid + ":" + orderid);

					strCmd = "UPDATE [aClass] SET orderID = orderID + 1 WHERE orderID > " + orderid;
					dp.NonQuerySQL(strCmd);
					//Response.Write("<br>更新了" + dp.NonQuerySQL(strCmd) + "个分类...");

					strCmd = "SELECT TOP 1 classID FROM [aClass] ORDER BY classID DESC";
					//SELECT top 1 classID FROM [Aclass] ORDER BY classID DESC
					//获取刚添加的分类的ID号
					int classid = int.Parse(dp.ReaderSQL(strCmd));
					//获取父类的深度
					strCmd = "SELECT depth FROM [aClass] WHERE classID = " + parentid;
					string outdepth = dp.ReaderSQL(strCmd);
					int depth = (outdepth == "" ? 0 : int.Parse(outdepth) + 1);

					// 获取添加分类的pPath路径集合
					string pathStr = this.GetpPath(classid, parentid);

					//将该类中的所有记录的 LastNode 设置为 0
					strCmd = "UPDATE [aClass] SET LastNode = 0 WHERE parentID = " + parentid;
					dp.NonQuerySQL(strCmd);
					//为新增的分类设置排序ID, LastNode设置为 -1
					strCmd = "UPDATE [Aclass] SET orderID = " + (orderid + 1) + ", pPath = '" + pathStr + "', LastNode = 1, depth = " + depth + ", allChildClass = '" + classid + "' WHERE classID = " + classid;
					dp.NonQuerySQL(strCmd);
					this.Added(parentid, classid, classid.ToString());
*/
					/******************更新上级所有分类****************/

					#endregion

					//Globals.ClassCollection = null;
					Cache.Remove("classCache");
				}
				else
				{
					label1.Text = "添加分类失败 ...";label1.ForeColor = Color.Red;
				}
				label1.Visible = true;
				#endregion
			}
			else
			{
				

				#region "开始修改分类信息"

				dp.CommandText = cmd["aClass", "UPDATE"];
				// 开始为参数赋值
				// 开始为参数赋值
				dp.Parameter.Add( "ClassName",		className.Text );
				dp.Parameter.Add( "ParentID",		parentID.SelectedValue );
				dp.Parameter.Add( "CustomUrl",		cUrl.Text);
				dp.Parameter.Add( "TitleCss",		linkColor.SelectedValue);
				dp.Parameter.Add( "listStyle",		listStyle.SelectedValue);
				dp.Parameter.Add( "cTempid",		cTempid.SelectedValue);
				dp.Parameter.Add( "newsTempID",		newsTempID.SelectedValue);
				dp.Parameter.Add( "targetMethod",	targetMethod.SelectedValue);
				dp.Parameter.Add( "EnableAdd",		canAdd.SelectedValue);
				dp.Parameter.Add( "cInBar",			cInBar.SelectedValue);
				dp.Parameter.Add( "cInNav",			cInNav.SelectedValue);
				dp.Parameter.Add( "cBind",			cBind.SelectedValue);
				dp.Parameter.Add( "cBindNum",		cBindNum.Text);
				dp.Parameter.Add( "allowGroups",	user.ListBox_SelectedValues(allowGroups));
				dp.Parameter.Add( "headCode",		HeadCode.Text);
				dp.Parameter.Add( "pageCode",		PageCode.Text);
				dp.Parameter.Add( "footCode",		FootCode.Text);
				dp.Parameter.Add( "ClassID",		classid.Value );


				if(dp.NonQuerySQL() == 1)
				{
					label1.Text = "分类“" + className.Text + "”修改成功!";label1.ForeColor = Color.BlueViolet;

					//Globals.ClassCollection = null;
					Cache.Remove("classCache");
				}
				else
				{
					label1.Text = "分类“" + className.Text + "”修改失败!";label1.ForeColor = Color.Red;
				}
				label1.Visible = true;
				#endregion

			}

			// 重建分类缓存信息
			if(Cache["classCache"] != null) Page.Cache.Remove("classCache");
		}


		#region Private Method
/*
		/// <summary>
		/// 处理添加后的信息
		/// </summary>
		/// <param name="addid"></param>
		/// <param name="classID"></param>
		/// <param name="parentID"></param>
		private void Added(int parentID, int classID, string addid)
		{
			strCmd = "UPDATE [Aclass] SET child = child + 1, allChildClass = (allChildClass + '," + addid + "') WHERE classID = " + parentID;
			dp.NonQuerySQL(strCmd);

			if(parentID != 0)
			{
				strCmd = "SELECT classID, parentID FROM [Aclass] WHERE classID = " + parentID;

				DataTable Dt = dp.DataTableSQL(strCmd);
//				classID = Convert.ToInt32(Dt.Rows[0][0]);
				parentID = Convert.ToInt32(Dt.Rows[0][1]);
				Added(parentID, classID, addid);
			}
		}


		/// <summary>
		/// 获取排序ID
		/// </summary>
		/// <param name="parentID"></param>
		/// <param name="pOrderID"></param>
		/// <returns></returns>
		private int GetOrderID(int parentID, int pOrderID)
		{
			int intResult = pOrderID;
			strCmd = "SELECT TOP 1 classID,orderID FROM [Aclass] WHERE parentID = " + parentID + " ORDER BY orderID DESC";

			DataTable Dt = dp.DataTableSQL(strCmd);
			if(Dt.Rows.Count != 0)
			{
				intResult = GetOrderID(int.Parse(Dt.Rows[0]["classID"].ToString()), int.Parse(Dt.Rows[0]["orderID"].ToString()));
			}

			return intResult;
		}
*/
		#endregion
	}
}

⌨️ 快捷键说明

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