2015-07-27 1 views
0

Je travaillais sur un projet et je me demandais comment gérer le résultat de JSON en tant qu'objet. Je réussis à utiliser une vue partielle mais je me demande simplement si c'est possible si je renvoie un résultat json sous forme de liste.asp.net mvc5 Utilisation de JsonResult

Mon résultat attendu est comme ça:

@using (Ajax.BeginForm("AddMission", "Mission", new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "ajaxEtki", InsertionMode = InsertionMode.InsertAfter } new AjaxOptions { HttpMethod = "POST", OnSuccess = "OnSuccess", OnFailure = "OnFailure" }){ 
// Do some staff 
} 

et dans la partie contrôleur

public JsonResult() 
{ 
    List<Missions> missions = _db.Missions.ToList(); 
    return Json(missions,JsonBehavior.AllowGet); 
} 

Je me demande comment gérer le résultat dans View partie (je veux utiliser le résultat comme des objets

// La partie que je me demande est l'utilisation de cette partie de script. // Parce que je n'ai pas réussi dans cette partie de script. Quelqu'un peut-il m'aider sur la façon de convertir ce jsonresult en liste d'objets?

<script type="text/javascript"> 
     function OnSuccess(response) { 
      var obj = response.get 
      alert(response); 
      var isss = JSON.parse(response); 

       var target = $("#ajaxEtki"); 
       target.empty(); 
       for (var i = 0; i < response.length; i++) { 
        var product = response[i]; 
        alert(product); 
        target.append(product.GOREVTURADI + "<br />"); 
       } 
      } 
      function OnFailure(response) { 
       alert("false") 
      } 
     </script> 

Merci d'avance pour votre aide.

Cordialement.

Répondre

0

Voici un exemple rapide.

  1. Ajouter discret-Ajax pour votre projet en utilisant la commande Install-Package Microsoft.jQuery.Unobtrusive.Ajax dans Package Manager Console.

  2. codes Exemple ci-dessous:

Modèle public class Mission { public int Id {get; ensemble; } public string Nom {get; ensemble; }}

Contrôleur

private readonly List<Mission> _missions = new List<Mission>() 
    { 
     new Mission(){Name = "qw",Id = 1}, 
     new Mission(){Name = "er",Id = 2}, 
     new Mission(){Name = "ty",Id = 3} 
    }; 
    public ActionResult Mission() 
    { 
     return Json(_missions, JsonRequestBehavior.AllowGet); 
    } 

Voir

</div> 
    @using (Ajax.BeginForm("Mission", new AjaxOptions() { OnSuccess = "submitMissionSuccess" })) 
    { 
     <input type="submit" value="Ok"/> 
    } 

Scripts en vue

@section scripts 
{ 
    <script> 
     function submitMissionSuccess(response) { 
      for (var i = 0; i < response.length; i++) { 
       $('#jsonTarget').append("<p>" + response[i].Name + "</p>"); 
      } 
     } 
    </script> 
}