schedule.cs

来自「青鸟影院」· CS 代码 · 共 79 行

CS
79
字号
using System;
using System.Collections.Generic;
using System.Text;
using System.Xml;
using System.Runtime.Serialization.Formatters.Binary;

namespace GreenBirdCinema
{
    /// <summary>
    /// 放映计划类,保存电影院当天的放映计划集合
    /// </summary>
    /// 
    [Serializable]
    class Schedule
    {
        public Schedule()
        {
            Items = new Dictionary<string, ScheduleItem>();
        }

        private Dictionary<string, ScheduleItem> items;

        public Dictionary<string, ScheduleItem> Items
        {
            get { return items; }
            set { items = value; }
        }

        //读取xml文件的方法
        public void LoadItems()
        {
            items.Clear();
            XmlDocument xml = new XmlDocument();
            xml.Load("FilmXml.xml");
            XmlNode movieNode = xml.DocumentElement;        //根节点

            string name = "";       //电影名字
            string poster = "";     //图片
            string director = "";   //导演
            string actor = "";      //主演
            string type = "";       //类型
            int price = 0;          //价格

            foreach (XmlNode node1 in movieNode)
            {
                if (node1.Name == "Movie")
                {
                    foreach (XmlNode node2 in node1)
                    {
                        switch (node2.Name)
                        {
                            case "Name": name = node2.InnerText; break;
                            case "Poster": poster = node2.InnerText; break;
                            case "Director": director = node2.InnerText; break;
                            case "Actor": actor = node2.InnerText; break;
                            case "Type": type = node2.InnerText; break;
                            case "Price": price = int.Parse(node2.InnerText); break;
                            case "Schedule":
                                foreach (XmlNode scheduleNode in node2)
                                {
                                    ScheduleItem item = new ScheduleItem();
                                    item.Time = scheduleNode.InnerText;
                                    item.Movie.MovieName = name;
                                    item.Movie.Poster = poster;
                                    item.Movie.Director = director;
                                    item.Movie.Actor = actor;
                                    item.Movie.MovieType = (MovieType)(Enum.Parse(typeof(MovieType), type));
                                    item.Movie.Price = price;
                                    items.Add(item.Time, item);
                                }
                                break;
                        }
                    }
                }
            }
        }
    }
}

⌨️ 快捷键说明

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