public ActionResult Create([Bind(Include = "UserId,Name,Repeats,RepeatsSelected,StartDate,Time,RepeatOn,StopDate,RepeatOnWeeks,RepeatOnDaysWeeks,RepeatOnDay,RepeatOnMonth,RepeatOnFirst,RepeatOnDay2,RepeatOnMonth2")] ScheduleViewModel vmodel)
        {
            if (vmodel.RepeatsSelected != -1)
            {
                ModelState.Remove("Repeats");
            }
            if (ModelState.IsValid)
            {
                Schedule model = null;
                if (vmodel.Repeats == ScheduleType.RepeatsEnum.Once)
                {
                    model = new ScheduleOnce(vmodel.Name, vmodel.Repeats, vmodel.StartDate, vmodel.Time);
                }
                else
                {
                    if (vmodel.Repeats == ScheduleType.RepeatsEnum.Daily)
                    {
                        model = new ScheduleDaily(vmodel.Name, vmodel.Repeats, vmodel.StartDate, vmodel.Time, vmodel.RepeatOn, vmodel.StopDate);
                    }
                    else
                    {
                        if (vmodel.Repeats == ScheduleType.RepeatsEnum.Weekly)
                        {
                            string days = vmodel.RepeatOnDaysWeeks == null ? "Mon" : vmodel.RepeatOnDaysWeeks;
                            model = new ScheduleWeekly(vmodel.Name, vmodel.Repeats, vmodel.StartDate, vmodel.Time, vmodel.RepeatOnWeeks, days, vmodel.StopDate);
                        }
                        else
                        {
                            if (vmodel.Repeats == ScheduleType.RepeatsEnum.Monthly)
                            {
                                model = new ScheduleMonthly(vmodel.Name, vmodel.Repeats, vmodel.StartDate, vmodel.Time, vmodel.RepeatOnDay, vmodel.RepeatOnMonth, vmodel.StopDate);
                            }
                            else
                            {
                                if (vmodel.Repeats == ScheduleType.RepeatsEnum.MonthlyRelative)
                                {
                                    model = new ScheduleMonthlyRelative(vmodel.Name, vmodel.Repeats, vmodel.StartDate, vmodel.Time, vmodel.RepeatOnFirst, vmodel.RepeatOnDay2, vmodel.RepeatOnMonth2, vmodel.StopDate);
                                }
                            }
                        }
                    }
                }
                User user = _userRepository.FindBy(Convert.ToInt32(vmodel.UserId));
                model.UserId = user.Id;
                _repo.Add(model);
                return(RedirectToAction("Index"));
            }

            return(View(vmodel));
        }
Exemple #2
0
        public void TestSchedule()
        {
            IChannelFactory <ISchedule> factory = new ChannelFactory <ISchedule>(new NetTcpBinding(), new EndpointAddress("net.tcp://127.0.0.1:1271"));
            ISchedule schedule = factory.CreateChannel(new EndpointAddress("net.tcp://127.0.0.1:1271"));

            schedule.Add(AssignmentType.MongoDBBackup, new TimeSpan(3));
        }
Exemple #3
0
        /// <summary>
        /// Добавляет встречу.
        /// </summary>
        private void Add()
        {
            Console.WriteLine("Введите данные о встрече");
            Console.WriteLine("Формат ввода: DD.MM.YYYY HH:MM:SS");
            Console.Write("Начало встречи: ");
            string beginStr = Console.ReadLine();

            Console.Write("Конец встречи: ");
            string endStr = Console.ReadLine();

            Console.Write("Уведомление о встрече: ");
            string noteStr = Console.ReadLine();

            try
            {
                DateTime?noteDateTime;
                if (noteStr == "")
                {
                    noteDateTime = null;
                }
                else
                {
                    noteDateTime = DateTime.Parse(noteStr);
                }

                _schedule.Add(DateTime.Parse(beginStr), DateTime.Parse(endStr), noteDateTime);
                Console.WriteLine("Добавлена новая встреча!");
            }
            catch (FormatException)
            {
                Console.WriteLine("Введены некорректные данные!");
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }