Affichage des éléments cochés / sélectionnés comme coché sur la page d’édition

J’ai donc cette page où l’utilisateur peut sélectionner des éléments pour deux catégories différentes (cas et parties). Lorsqu’un utilisateur crée une visite (programme), il peut sélectionner un ou plusieurs éléments de la catégorie Cas et sélectionner certaines parties. Ensuite, ils sauvegardent les informations en fonction des sélections. Lorsque je vais à la page d’édition de ce programme créé, j’aimerais que les cases à cocher soient cochées pour les éléments sélectionnés et enregistrés au cours de la création. Je ne sais pas si je manque les parameters transmis ou ce dont j’ai besoin pour afficher les éléments sélectionnés.

mon code Get Get & Post (enregistrement des informations contenant les sélections)

[HttpGet] public ActionResult Create(Guid caseId) { var viewModel = new VisitViewModel(); SetCaseFields(caseId, viewModel); viewModel.Time = _defaultVisitTime; AddLookupsToViewModel(viewModel); return View(viewModel); } [HttpPost] public ActionResult Create(VisitViewModel viewModel, Guid[] associatedCasesSelected, Guid[] selectedParties) { if (!ModelState.IsValid) { viewModel.Time = _timeEntryHelper.Value; AddLookupsToViewModel(viewModel); return View(viewModel); } VisitEntry dto = Mapper.Map(viewModel); dto.VisitDate = _timeEntryHelper.AddTimeToDate(dto.VisitDate); dto.CasePartyIds = selectedParties; dto.Cases = associatedCasesSelected; SetCurrentUserAndOffice(dto); try { _visitEntryService.Create(dto, dto.Cases); this.FlashInfo(ssortingng.Format(Message.ConfirmationMessageCreate, Resources.Entities.Visit.EntityName)); } catch (RulesException ex) { ex.CopyTo(ModelState); } if (ModelState.IsValid) return RedirectToAction("Edit", "Case", new { caseId = viewModel.CaseId }); return View(viewModel); } 

Ceci est ma méthode Get Get & Post.

 [HttpGet] public ActionResult Edit(Guid visitEntryId) { VisitEntry dto = _visitEntryService.Get(visitEntryId); if (dto == null) return View("Error"); VisitViewModel viewModel = Mapper.Map(dto); SetCaseFields(dto.CaseId, viewModel); AddLookupsToViewModel(viewModel); return View(viewModel);} [HttpPost] public ActionResult Edit(VisitViewModel viewModel, Guid[] associatedCasesSelected, Guid[] selectedParties) { if(!ModelState.IsValid) { viewModel.Time = _timeEntryHelper.Value; AddLookupsToViewModel(viewModel); return View(viewModel); } try { VisitEntry dto = Mapper.Map(viewModel); dto.VisitDate = _timeEntryHelper.AddTimeToDate(dto.VisitDate); dto.CasePartyIds = selectedParties; dto.Cases = associatedCasesSelected; SetCurrentUserAndOffice(dto); _visitEntryService.Update(dto, dto.Cases); } catch (RulesException ex) { ex.CopyTo(ModelState); } if (!ModelState.IsValid) { viewModel.Time = _timeEntryHelper.Value; AddLookupsToViewModel(viewModel); return View(viewModel); } this.FlashInfo(ssortingng.Format(Message.ConfirmationMessageUpdate, Kids.Resources.Entities.Visit.EntityName)); return RedirectToAction("Edit", "Case", new {caseId = viewModel.CaseId}); } 

Cette méthode charge les informations sur la fête:

 IList caseParties = _associatedCasePartyService.GetAssignedPartiesForThisAndAssociatedCases(viewModel.CaseId, _currentUser.OfficeId); if (caseParties != null) viewModel.AvailableCaseParties = caseParties; 

C’est mon sharepoint vueModèle:

 public class VisitViewModel { public IEnumerable AvailableCaseParties { get; set; } public IList PartiesSelected { get; set; } } 

VisitForm.ascx contenant les emplacements de champs:

  

Parties.ascx – qui contient la ligne permettant de cocher la case et ensuite d’éditer l’entrée que la page charge avec toutes les informations enregistrées, à l’exception des parties cochées:

   0) {%> 
Parties
"PartiesGrid").Columns( column => { column.For(party => ssortingng.Format("", party.PartyId, Model.PartiesSelected != null && Model.PartiesSelected.Count(p => p == party.PartyId) > 0 ? "checked" : ssortingng.Empty)).Encode(false).Header(ssortingng.Format("")); column.For(party => party.FullName).Named(Kids.Resources.Entities.Party.EntityName); } ).Empty(ssortingng.Format("No {0}", Kids.Resources.Entities.Party.EntityNamePlural)) %>