Добавление значений из списка <T>в столбец базы данных - PullRequest
0 голосов
/ 18 мая 2018

В настоящее время я могу вставить запись, которая содержит 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; }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...