第一个web程序总结

来源:互联网 发布:湖北文理学院网络 编辑:程序博客网 时间:2024/06/05 03:25
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml;
using WebApplication5;
using System.Data;

namespace Employee1
{
    public partial class employ : System.Web.UI.Page
    {
        string xmlPath = @"C:\Users\v-shhu\Documents\Visual Studio 2013\Projects\Employee1\Employee1\employee.xml";
        public void Update()
        {
            List<Partner> partnerList = new List<Partner>();
            XmlDocument xmlDoc = new XmlDocument();
           //加载XML文件
            xmlDoc.Load(xmlPath);
            XmlNode xn = xmlDoc.SelectSingleNode("employee");
            XmlNodeList xn1 = xn.ChildNodes;
           //将XML内容读取到列表
            foreach (XmlNode xnn in xn1)
            {
                Partner partner1 = new Partner();
                XmlElement xe = (XmlElement)xnn;
                partner1.Id = Convert.ToInt32(xe.GetAttribute("ID").ToString());
                partner1.Name = xe.GetAttribute("NAME").ToString();
                partner1.DaTe = xe.GetAttribute("DATE").ToString();
                partnerList.Add(partner1);
            }
           //绑定到Grid View控件
            this.GridView1.DataSource = partnerList;
            GridView1.DataBind();
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            Update();
        }
        protected void Read_Info_Click(object sender, EventArgs e)
        {
            Update();
        }
        protected void Add_Info_Click(object sender, EventArgs e)
        {
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load(xmlPath);
            XmlNode root = xmlDoc.SelectSingleNode("employee");
            XmlNode x1 = xmlDoc.SelectSingleNode("employee");
            XmlNodeList nodeList = x1.ChildNodes;
            bool a = true;
            foreach (XmlNode xn in nodeList)
            {
                XmlElement xe = (XmlElement)xn;
                if (xe.GetAttribute("ID") == TextBox1.Text)
                {
                    Response.Write("<script>alert('This ID has been existed!')</script>");
                    a = false;
                    break;
                }
               
            }
           // Response.Write("<script>alert('This ID has been existed!')</script>");
            if (a)
            {
                XmlElement xleKey = xmlDoc.CreateElement("employ");
                xleKey.SetAttribute("ID", TextBox1.Text);
                xleKey.SetAttribute("NAME", TextBox2.Text);
                xleKey.SetAttribute("DATE", TextBox3.Text);

                root.AppendChild(xleKey);
                xmlDoc.Save(xmlPath);
            }
 
            Update();
        }
        protected void Change_Info_Click(object sender, EventArgs e)
        {
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load(xmlPath);
            XmlNode x1 = xmlDoc.SelectSingleNode("employee");
            XmlNodeList nodeList = x1.ChildNodes;
            foreach (XmlNode xn in nodeList)
            {
                XmlElement xe = (XmlElement)xn;
                if (xe.GetAttribute("ID") == TextBox4.Text)
                {
                    xe.SetAttribute("ID", TextBox5.Text);
                }
                else if (xe.GetAttribute("NAME") == TextBox4.Text)
                {
                    xe.SetAttribute("NAME", TextBox5.Text);
                }
                else if (xe.GetAttribute("DATA") == TextBox4.Text)
                {
                    xe.SetAttribute("DATA", TextBox5.Text);
                }
            }
            xmlDoc.Save(xmlPath);
            Update();
        }
        protected void Del_Info_Click(object sender, EventArgs e)
        {
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load(xmlPath);
            XmlNode x1 = xmlDoc.SelectSingleNode("employee");
            XmlNodeList nodeList = x1.ChildNodes;
            foreach (XmlNode xn in nodeList)
            {
                XmlElement xe = (XmlElement)xn;
                if (xe.GetAttribute("ID") == TextBox6.Text)
                {
                    xe.ParentNode.RemoveChild(xe);
                    //xe.RemoveAllAttributes();
                }
            }
            xmlDoc.Save(xmlPath);
            Update();
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            Response.Write("<script>alert('This ID has been existed!')</script>");
        }

        //sort
        public SortDirection GridViewSortDirection
        {
            get
            {
                if (ViewState["sortDirection"] == null)
                    ViewState["sortDirection"] = SortDirection.Ascending;
                return (SortDirection)ViewState["sortDirection"];
            }
            set { ViewState["sortDirection"] = value; }
        }
 
        bool SSort = false;
        protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
        {
            string sortExpression = e.SortExpression;
            if (GridViewSortDirection == SortDirection.Ascending)
            {
                GridViewSortDirection = SortDirection.Descending;              
                SortGridView(sortExpression,SSort);
               
            }
            else
            {
                GridViewSortDirection = SortDirection.Ascending;
                SSort = !(SSort);
                SortGridView(sortExpression,SSort);
               
            }
        }
        private void SortGridView(string sortExpression,bool SSort)
        {
            List<Partner> partnerList = new List<Partner>();
            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.Load(xmlPath);
            XmlNode xn = xmlDoc.SelectSingleNode("employee");
            XmlNodeList xn1 = xn.ChildNodes;
            foreach (XmlNode xnn in xn1)
            {
                Partner partner1 = new Partner();
                XmlElement xe = (XmlElement)xnn;
                partner1.Id = Convert.ToInt32(xe.GetAttribute("ID").ToString());
                partner1.Name = xe.GetAttribute("NAME").ToString();
                partner1.DaTe = xe.GetAttribute("DATE").ToString();
                partnerList.Add(partner1);
            }
            if (SSort)
            {
                if (sortExpression == "Id")
                {
                    var su = partnerList.OrderBy(f => f.Id).ToList();
                    partnerList = su;
                }
                else if (sortExpression == "Name")
                {
                    var su = partnerList.OrderBy(f => f.Name).ToList();
                    partnerList = su;
                }
                else if (sortExpression == "DaTe")
                {
                    var su = partnerList.OrderBy(f => f.DaTe).ToList();
                    partnerList = su;
                }
               
                
                   // partnerList.Sort(new PartnerCompare());
              
               
            }
            else
            {
                if (sortExpression == "Id")
                {
                    var su = partnerList.OrderByDescending(f => f.Id).ToList();
                    partnerList = su;
                }
                else if (sortExpression == "Name")
                {
                    var su = partnerList.OrderByDescending(f => f.Name).ToList();
                    partnerList = su;
                }
                else if (sortExpression == "DaTe")
                {
                    var su = partnerList.OrderByDescending(f => f.DaTe).ToList();
                    partnerList = su;
                }

               
                    //partnerList.Sort(new PartnerCompare1());
               
            }
           
            this.GridView1.DataSource = partnerList;
            GridView1.DataBind();
           
        }

        public class PartnerCompare : IComparer<Partner>
        {
            public int Compare(Partner x, Partner y)
            {
                return (x.DaTe.CompareTo(y.DaTe));
            }
        }
       
        public class PartnerCompare1 : IComparer<Partner>
        {
            public int Compare(Partner x, Partner y)
            {
                return (y.DaTe.CompareTo(x.DaTe));
            }
        }
    }
}
0 0
原创粉丝点击