В настоящее время я могу вставить запись, которая содержит second
, minute
, hour
, Repeat
, JobId
и UserID
, однако она будет вставлять только одно значение из каждого из List<object>
.
Вопрос 1. Как добавить значения из List<object>
(model.DayOfMonth
, model.Month
и model.DaysOfWeek
) в локальную базу данных?
Вопрос 2: Кроме того, насколько я понимаю, каждое значение в списке должно иметь свою собственную запись.Как мне создать новую запись для каждого значения в List<object>
(названном выше) при копировании на те же second
, minute
, hour
, repeat
, JobId
и UserID
.
Контроллер:
[HttpPost]
public ActionResult ScheduleInfo(Values model, int JobList1, string Second, string Minute, string Hour, object DayOfMonth, object Month, object DaysOfWeek, int repeatTime)
{
var secondCon = Convert.ToInt32(Second);
var minuteCon = Convert.ToInt32(Minute);
var hourCon = Convert.ToInt32(Hour);
model.Job = JobList1;
model.Second = secondCon;
model.Minute = minuteCon;
model.Hour = hourCon;
model.DayOfMonth = new List<object>();
model.Month= new List<object>();
model.DaysOfWeek = new List<object>();
foreach (var dofm in model.DofMInfo)
{
if (dofm.IsChecked)
{
model.DayOfMonth.Add(dofm.DofMID);
}
}
foreach (var month in model.MonthInfo)
{
if (month.IsChecked)
{
model.Month.Add(month.monthID);
}
}
foreach (var day in model.DayInfo)
{
if (day.IsChecked)
{
model.DaysOfWeek.Add(day.dayID);
}
}
model.repeatTime = repeatTime;
try
{
ScheduleEntity db = new ScheduleEntity();
AspNetUser aspNetUser = new AspNetUser();
Job job = new Job();
Schedule sched = new Schedule();
sched.Second = Convert.ToString(model.Second);
sched.Minute = Convert.ToString(model.Minute);
sched.Hour = Convert.ToString(model.Hour);
//foreach (var day in model.DayOfMonth)
//{
// sched.DayOfMonth = Convert.ToString(day);
//}
//foreach (var month in model.Month)
//{
// sched.Month = Convert.ToString(month);
//}
//foreach (var weekday in model.DaysOfWeek)
//{
// sched.DayOfWeek = Convert.ToString(weekday);
//}
sched.Repeat = 4;
sched.JobId = 2;
sched.AspNetUsersId = User.Identity.GetUserId();
db.Schedules.Add(sched);
db.SaveChanges();
}
catch (Exception ex)
{
throw ex;
}
return RedirectToAction("SchedulerIndex");
}
}
Класс расписания, который я вызываю и задаю как sched
:
using System;
using System.Collections.Generic;
public partial class Schedule
{
public int ScheduleID { get; set; }
public string Second { get; set; }
public string Minute { get; set; }
public string Hour { get; set; }
public string DayOfMonth { get; set; }
public string Month { get; set; }
public string DayOfWeek { get; set; }
public string AspNetUsersId { get; set; }
public Nullable<int> JobId { get; set; }
public int Repeat { get; set; }
public virtual AspNetUser AspNetUser { get; set; }
public virtual Job Job { get; set; }
}