public async Task Post(ResourceEditDto dto) { if (TryValidateModel(dto)) { using (var db = new TestDbContext()) { var model = await db.Resources.FirstOrDefaultAsync(x => x.Id == dto.Id); if (model != null) { _mapper.Map(dto, model); model.UpdatedOnUtc = DateTime.Now; db.Entry(model).State = EntityState.Modified; await db.SaveChangesAsync(); } else { model = _mapper.Map <Resource>(dto); model.CreatedOnUtc = DateTime.Now; model.UpdatedOnUtc = DateTime.Now; db.Resources.Add(model); await db.SaveChangesAsync(); } } } else { throw new Exception(String.Join(";", ModelState.Values.SelectMany(v => v.Errors).Select(x => x.ErrorMessage))); } }
public ViewResult Edit(int ResourceId) { var curRes = this.repositoryWrapper.Resource.FindByCondition(r => r.ResourceId == ResourceId).First(); var subjTitle = this.repositoryWrapper.Subject.FindByCondition(s => s.SubjectId == curRes.SubjectId).First().Title; var newResourceDto = new ResourceEditDto() { ResourceId = curRes.ResourceId, SubjectId = curRes.SubjectId, Title = curRes.Title, Url = curRes.Url, Notes = curRes.Notes, Type = curRes.Type, SubjectTitle = subjTitle }; return(View(newResourceDto)); }
public ActionResult Edit(ResourceEditDto editResourceDto) { try { var curRes = this.repositoryWrapper.Resource.FindByCondition(r => r.ResourceId == editResourceDto.ResourceId).First(); curRes.Title = editResourceDto.Title; curRes.Url = editResourceDto.Url; curRes.Notes = editResourceDto.Notes; curRes.Type = editResourceDto.Type; repositoryWrapper.Resource.Update(curRes); repositoryWrapper.Save(); return(RedirectToAction(nameof(Index), new { ParentId = curRes.SubjectId })); } catch { return(View()); } }