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

📄 mysqlxmltree.aspx.cs

📁 ASP C#代码实例 适合初学人士学习使用
💻 CS
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Xml;
using System.Configuration;

namespace Example_11_12
{
	/// <summary>
	/// Summary description for MySQLXMLTree.
	/// </summary>
	public class MySQLXMLTree : System.Web.UI.Page
	{
		public static string SQLCONNECTIONSTRING = ConfigurationSettings.AppSettings["SQLCONNECTIONSTRING"].ToString();
		DataSet ds = new DataSet();
		XmlDocument xmlDoc = new XmlDocument();

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

		private void CreateTree()
		{
//			XmlDocument xmlDoc = new XmlDocument();         
			ds = GetTrees();
			//生成根节点
			XmlElement treeContentElement = xmlDoc.CreateElement("NewDataSet");
			xmlDoc.AppendChild(treeContentElement);
			//递归生成频道的XML文档
			for(int j=0;j<ds.Tables["Tree"].Rows.Count;j++)
			{
				if(Int32.Parse(ds.Tables["Tree"].Rows[j].ItemArray[2].ToString()) == 0)
				{
					BulidXmlTree(treeContentElement,j);
				}
				else
				{
					continue;
				}
			}
			string fileName = Server.MapPath("XMLFiles/Tree.xml");
			xmlDoc.Save(fileName);
		}

		private void BulidXmlTree(XmlElement tempXmlElement,int location)
		{                                
			DataRow tempRow = ds.Tables["Tree"].Rows[location];
			//生成Tree节点
			XmlElement treeElement = xmlDoc.CreateElement("Tree");
			tempXmlElement.AppendChild(treeElement);
			AppendChildElement("TreeID",tempRow.ItemArray[0].ToString(),treeElement);
			AppendChildElement("TreeDesn",tempRow.ItemArray[1].ToString(),treeElement);
			AppendChildElement("ParentID",tempRow.ItemArray[2].ToString(),treeElement);
			AppendChildElement("TreeUrl",tempRow.ItemArray[3].ToString(),treeElement); 
			for(int i=0 ; i < ds.Tables["Tree"].Rows.Count;i++)
			{
				if(ds.Tables["Tree"].Rows[i].ItemArray[2].ToString() == tempRow.ItemArray[0].ToString())
				{
					BulidXmlTree(treeElement,i);
				}
			}         
		}

		private void AppendChildElement(string strName , string strInnerText , XmlElement parentElement, XmlDocument xmlDocument )
		{
			XmlElement xmlElement = xmlDocument.CreateElement(strName);
			xmlElement.InnerText = strInnerText ;
			parentElement.AppendChild(xmlElement); 
		}

		private void AppendChildElement(string strName , string strInnerText , XmlElement parentElement)
		{
			AppendChildElement(strName,strInnerText,parentElement,xmlDoc);
		}

		private DataSet GetTrees()
		{
			DataSet dataSet = new DataSet();

			///从数据库中获取数据
			SqlConnection myConnection = new SqlConnection(SQLCONNECTIONSTRING);
			//创建Adapter对象
			SqlDataAdapter da = new SqlDataAdapter("Pr_GetTree",myConnection);

			///设置执行的方式为存储过程
			da.SelectCommand.CommandType = CommandType.StoredProcedure;

			try
			{
				///执行数据库查询
				myConnection.Open();
				da.Fill(dataSet,"Tree");
				da.Dispose();
			}
			catch
			{
				dataSet = null;
			}
			finally
			{
				da.Dispose();
				myConnection.Close();
			}

			return(dataSet);
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: This call is required by the ASP.NET Web Form Designer.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{    
			this.Load += new System.EventHandler(this.Page_Load);
		}
		#endregion
	}
}

⌨️ 快捷键说明

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