public IActionResult Put(long id, [FromBody] SoalEditVM soal) { // if ( // !ModelState.IsValid // || !_soal.isSoalOfuser(soal.Id, 5) // || (soal.Id != id) // || (soal == null || id < 1)) // { // return BadRequest("** شیطون بلا **"); // } // var q = _soal.EditforSoal(soal); // if (q) // { // return Ok("*** علی باوامی ***"); // } return(StatusCode(500)); }
public bool EditforSoal(SoalEditVM soalVM) { try { var sl = _soalRepository.GetById(soalVM.Id); sl.Matn = soalVM.Matn; if (soalVM.TagsId != null) { var tags = db.Set <TagSoal>().Include(S => S.Soal).ToList().Where(x => x.Soal.Id.Equals(soalVM.Id)); var s = (from c in tags.Where(x => !soalVM.TagsId.Contains(x.Id)) select c).ToList(); s.ForEach(x => x.Isdeleted = true); soalVM.TagsId.Except(tags.Where(x => !x.Isdeleted).Select(x => x.Id)); //یک فیلتر یا کوئری برای اضافه کردن رکورد جدید به جدول //تگ سوال برای تگهای جدید اضافه //شده توسط کاربر باید نوشته شد foreach (var n in soalVM.TagsId) { db.Addnew <TagSoal>(new TagSoal { Isdeleted = false, TagId = n, Soal = sl }); } } else { var tg = db.Set <TagSoal>().Where(x => x.Soal.Id.Equals(soalVM.Id)).ToList(); tg.ForEach(x => x.Isdeleted = true); } db.MarkAsChanged <Soal>(sl); db.SaveAllChanges(); return(true); } catch { return(false); } }
public IActionResult Put(long id, [FromBody] SoalEditVM soal) { var us = _users.GetCurrentUserId(); if ( !ModelState.IsValid || !_soal.isSoalOfuser(soal.Id, us) || (soal.Id != id) || (soal == null || id < 1)) { return(BadRequest()); } var q = _soal.EditforSoal(soal); if (q) { return(Ok()); } return(BadRequest()); }