J'ai besoin d'instancier des LinkButtons ASP sur une page de vue ASP.NET MVC. J'ai essayé quelques trucs, et je ne peux pas les faire sortir correctement. Heres mon incarnation la plus récente du code: le fichier ASPXLinkButton dans ASP.NET MVC
<body>
<% using (Html.BeginForm("TitleDetail", "Movies", FormMethod.Post, new{runat="server"})) { %>
<ul>
<% foreach (var disc in Model.Title.tblDiscs) %>
<% { %>
<li>
<asp:LinkButton ID="Play">Link</asp:LinkButton>
</li>
<% } %>
</ul>
<% } %>
</body>
Ce qu'il rend dans Firefox est une instance du lien texte pour chaque membre de la collection Je suis ENUMERE mais ils ne coûtent pas des liens hypertexte, juste le texte . Le code HTML généré ressemble à ce
<form action="/MyMovies/TitleDetail/239" method="post" runat="server">test title <br />
<ul>
<li>
<asp:LinkButton ID="Play">Link</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="Play">Link</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="Play">Link</asp:LinkButton>
</li>
</ul>
J'ai essayé d'ajouter un runat = attribuite « serveur » à chaque asp: tag LinkButton, mais je reçois une exception d'exécution qui contrôle ne peut être mis à l'intérieur une balise de formulaire avec l'attribut runat = "server". Ce que je pense avoir déjà fait, donc je ne comprends pas vraiment ça. Quelqu'un peut-il m'expliquer ce que je fais de mal, et ce que je dois faire pour le réparer afin que les LinkButtons soient réellement liés?
Je pense que c'est une bonne chose (tm). :) – BobbyShaftoe
@BobbyShaftoe, une bonne chose sur quelle base? Normalement tout ce qui change l'état du serveur devrait utiliser un verbe POST, GET ne devrait être utilisé que pour extraire des données (ce sont les recommandations du W3C et elles sont destinées à la sécurité). Pour des raisons esthétiques, il n'est pas toujours possible d'utiliser un bouton, d'où le besoin de LinkButton. –