// GET: ScheduleOnces/Edit/5 public PartialViewResult Edit(int?id) { if (id == null) { return(PartialView()); } Schedule schedule = _repo.FindBy(id); ScheduleViewModel vmodel = new ScheduleViewModel(); vmodel.Name = schedule.Name; vmodel.Repeats = schedule.Repeats; vmodel.StartDate = schedule.StartDate; if (schedule == null) { return(PartialView()); } if (schedule.GetType().BaseType.FullName == typeof(ScheduleOnce).FullName) { vmodel.Time = ((ScheduleOnce)schedule).Time; } if (schedule.GetType().BaseType.FullName == typeof(ScheduleDaily).FullName) { vmodel.RepeatOn = ((ScheduleDaily)schedule).RepeatOn; vmodel.StopDate = ((ScheduleDaily)schedule).StopDate; vmodel.Time = ((ScheduleDaily)schedule).Time; } if (schedule.GetType().BaseType.FullName == typeof(ScheduleWeekly).FullName) { vmodel.RepeatOnWeeks = ((ScheduleWeekly)schedule).RepeatOnWeeks; vmodel.RepeatOnDaysWeeks = ((ScheduleWeekly)schedule).RepeatOnDaysWeeks; vmodel.Time = ((ScheduleWeekly)schedule).Time; } if (schedule.GetType().BaseType.FullName == typeof(ScheduleMonthly).FullName) { vmodel.RepeatOnDay = ((ScheduleMonthly)schedule).RepeatOnDay; vmodel.RepeatOnMonth = ((ScheduleMonthly)schedule).RepeatOnMonth; vmodel.Time = ((ScheduleMonthly)schedule).Time; } if (schedule.GetType().BaseType.FullName == typeof(ScheduleMonthlyRelative).FullName) { vmodel.RepeatOnFirst = ((ScheduleMonthlyRelative)schedule).RepeatOnFirst; vmodel.RepeatOnDay2 = ((ScheduleMonthlyRelative)schedule).RepeatOnDay; vmodel.RepeatOnMonth2 = ((ScheduleMonthlyRelative)schedule).RepeatOnMonth; vmodel.Time = ((ScheduleMonthlyRelative)schedule).Time; } return(PartialView(vmodel)); }