12
votes

ASP.NET MVC. Passer une liste via ViewData

HI fait-il que quelqu'un sait comment transmettre une liste via la "ViewData". C'est ce que j'essaie mais je pense que je manque un casque d'autre où. XXX Pré>

Voici mon code de page ASPX: P>

 <% List<myNS.CM.AVDTalentApplication.Models.GalleryModel> galList = ViewData["SomeList"];  %>
<% foreach (var gal in galList) { %>
<%= gal.uri%>
<%} %>


0 commentaires

4 Réponses :


0
votes

Vous devez expliquer explicitement l'objet de la collection ViewData en tant que type dont vous avez besoin pour interagir avec:

<%@ Import Namespace="myNS.CM.AVDTalentApplication.Models" %>

<% foreach(var gal in (List<GalleryModel>) ViewData["SomeList"]) %>
<% { %>
    <%= gal.uri %>
<% } %>


1 commentaires

Cela n'a pas aimé ce type de casting. voir la réponse.



17
votes

pour cette ligne: xxx

changez-le à xxx


1 commentaires

Travaillé grand. Merci! Je ne sais pas pourquoi l'autre type de casting ne fonctionne pas.



1
votes

Vous devez la jeter dans la vue:

<% var galList = (List<myNS.CM.AVDTalentApplication.Models.GalleryModel>) ViewData["SomeList"];  %>


0 commentaires

0
votes

Même si toutes les réponses ci-dessus sont correctes, je suggère fortement de faire une utilisation Voir les modèles .


1 commentaires

oh tirer, c'était censé comme un commentaire