コード例 #1
0
        public static YearSchedule QuickSchedule(string Name, double[] dayArray, double[] weArray, ScheduleType type, string category, string dataSource, ref Library Library)
        {
            //int[] MonthFrom = { 1 };
            //int[] DayFrom = { 1 };
            //int[] MonthTo = { 12 };
            //int[] DayTo = { 31 };

            DaySchedule someDaySchedule = new DaySchedule(Name, type, dayArray.ToList());

            someDaySchedule.DataSource = dataSource;
            someDaySchedule.Category   = category;
            someDaySchedule            = Library.Add(someDaySchedule);

            DaySchedule weSchedule = new DaySchedule(Name + "WeekEnd", type, weArray.ToList());

            weSchedule.DataSource = dataSource;
            weSchedule.Category   = category;
            weSchedule            = Library.Add(weSchedule);

            DaySchedule[] daySchedulesArray = { someDaySchedule, someDaySchedule, someDaySchedule, someDaySchedule, someDaySchedule, weSchedule, weSchedule };
            WeekSchedule  someWeekSchedule  = new WeekSchedule(daySchedulesArray, new DateTime(2006, 1, 1), new DateTime(2006, 12, 31));

            //someWeekSchedule.DataSource = dataSource;
            //someWeekSchedule.Category = category;
            //someWeekSchedule = Library.Add(someWeekSchedule);

            WeekSchedule[] weekSchedulesArray = { someWeekSchedule };
            YearSchedule   someYearSchedule   = new YearSchedule(Name, type, weekSchedulesArray.ToList()); //, MonthFrom.ToList(), DayFrom.ToList(), MonthTo.ToList(), DayTo.ToList()

            someYearSchedule.DataSource = dataSource;
            someYearSchedule.Category   = category;

            Library.Add(someYearSchedule);
            return(someYearSchedule);
        }
コード例 #2
0
        public YearSchedule Add(YearSchedule obj)
        {
            if (obj == null)
            {
                return(null);
            }
            if (YearSchedules == null)
            {
                YearSchedules = new List <YearSchedule>();
            }
            if (!YearSchedules.Any(i => i.Name == obj.Name))
            {
                YearSchedules.Add(obj);

                foreach (var w in obj.WeekSchedules)
                {
                    // this.Add(w);
                    foreach (var d in w.Days)
                    {
                        this.Add(d);
                    }
                }

                return(obj);
            }
            else
            {
                var oc = YearSchedules.Single(o => o.Name == obj.Name);
                CopyObjectData(obj, oc, "", BindingFlags.Public | BindingFlags.Instance);

                foreach (var w in oc.WeekSchedules)
                {
                    //this.Add(w);
                    foreach (var d in w.Days)
                    {
                        this.Add(d);
                    }
                }

                return(oc);
            }
        }