J'ai une liste d'objets enfants. Je voudrais être en mesure de basculer s'ils sont inclus dans une plus petite liste d'objets qui ont une relation à un objet parent. Comme si:Utilisation de Json et AjaxLink pour basculer les valeurs de lien dans ASP.NET MVC 2
<% foreach(var child in Model.AllPossibleChildren)%>
<% { %>
<tr>
<td>
<%if(child.Link.Any(r => r.Id == Model.Parent.Id))
{ %>
<%:Ajax.ActionLink("Remove", "RemoveChild", new { aId = Model.Parent.Id, rId = child.Id }, null)%>
<% }
else
{ %>
<%:Ajax.ActionLink("Add", "AddChild", new { aId = Model.Parent.Id, rId = child.Id }, null)%>
<% } %>
</td>
</tr>
<% } %>
L'idée ici est que lorsque l'utilisateur clique sur « Supprimer », il supprime la relation entre le parent et l'enfant, puis en quelque sorte (en utilisant Jquery ou AjaxOptions) basculer les paramètres de ActionLink pour correspondre l'autre condition (Ajouter au lieu de Supprimer pour le texte du lien, AddChild au lieu de RemoveChild pour la méthode d'action). C'est la partie sur laquelle je ne suis pas clair. Est-ce que j'approche cela correctement ou y a-t-il un meilleur moyen de le faire?
public JsonResult AddChild(string aId, int rId)
{
//Create Relationship
return Json(result);
}
public JsonResult RemoveChild(string aID, int rID)
{
//Remove Relationship
return Json(result);
}
Merci! J'ai cherché à utiliser des vues partielles pour cela, mais je n'arrive pas à l'obtenir non plus. Je reviens toujours à ce modèle et je n'arrive toujours pas à comprendre comment le faire fonctionner! Je ne veux pas avoir à rediffuser toute la page, même si avec la façon dont je l'ai configuré maintenant, cela fonctionnerait. C'est peut-être mon problème? Toujours à la recherche d'aide!