Как в asp.net.mvc 5 сложить два значения из связанных таблиц
Всем доброго времени суток. Прошу прощения за вопрос, но я еще плохо разбираюсь в asp.net.mvc 5, прошу помочь, задача следующая: Есть БД в ней две связанных таблицы RequestProcessing и RequestType, значение поля DeadLine таблицы RequestProcessing должно меняться в зависимости от значения TimeComplete таблицы RequestType, а именно складываться из значений RequestProcessing.DeadLine = RequestProcessing.Date + RequestType.TimeComplete, прошу извинить за такие грубые формулировки. Ниже привожу сами классы и метод контролера в котором я хочу это получить
public class RequestProcessing
{
public int Id { get; set; }
[Display(Name = "Дата поступления")]
[Required]
public DateTime Date { get; set; }
[Display(Name = "Комментарий")]
public string Comment { get; set; }
[Display(Name = "Выполнить до")]
[Required]
public DateTime DeadLine { get; set; }
[Display(Name = "ИД заявки")]
[Required]
public int RequestId { get; set; }
public Request Request { get; set; }
[Display(Name = "ФИО")]
public int? SpecialistId { get; set; }
public Specialist Specialist { get; set; }
[Display(Name = "Статус заявки")]
public int? StatusId { get; set; }
public Status Status { get; set; }
[Display(Name = "Тип заявки")]
public int? TypeId { get; set; }
[ForeignKey ("TypeId")]
public RequestType RequestType { get; set; }
}
public class RequestType
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[Display(Name = "Тип заявки")]
[Required]
[StringLength(50, ErrorMessage = "Данное поле должно содержать не более 50 символов")]
public string TypeName { get; set; }
[Display(Name = "Время на выполнение")]
[Required]
public double TimeComplete { get; set; }
[Display(Name = "Описание")]
[StringLength(300, ErrorMessage = "Данное поле должно содержать не более 300 символов")]
public string Description { get; set; }
[ForeignKey("TypeId")]
public virtual ICollection<RequestProcessing> RequestProcessings { get; set; }
public RequestType()
{
RequestProcessings = new List<RequestProcessing>();
}
}
public class RequestProcessingController : Controller
{
[HttpPost]
public ActionResult EditRequestProcessing(RequestProcessing rProcessing)
{
if (ModelState.IsValid)
{
RequestProcessing newRProcessing = dbRP.RequestProcessings.Find(rProcessing.Id);
newRProcessing.Comment = rProcessing.Comment;
newRProcessing.SpecialistId = rProcessing.SpecialistId;
newRProcessing.StatusId = rProcessing.StatusId;
newRProcessing.TypeId = rProcessing.TypeId;
**newRProcessing.DeadLine =
rProcessing.Date.AddMinutes(rProcessing.RequestType.TimeComplete);**
dbRP.Entry(newRProcessing).State = EntityState.Modified;
dbRP.SaveChanges();
return RedirectToAction("RequestProcessing");
}
return View();
}