Potrzebuję utworzyć instancję niektórych LinkButtons ASP na stronie widoku MVC ASP.NET. Wypróbowałem kilka rzeczy i nie mogę ich zmusić do wyjścia. Herezje moja najnowsza inkarnacja kodu: plik aspxLinkButton w 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>
Co to świadczy Firefox to jedna instancja Text Link dla każdego członka w kolekcji mam wymieniającym, ale oni nie hiperłącza, tylko tekst . Wygenerowany HTML wygląda tak
<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>
Próbowałem dodając runat = „server” attribuite do każdego tagu asp: LinkButton, ale pojawia się wyjątek czasu wykonywania, że kontrole mogą być wprowadzane wyłącznie wewnątrz tag formularza z atrybutem runat = "server". Co myślę, że już zrobiłem, więc naprawdę tego nie rozumiem. Czy ktoś może mi wyjaśnić, co robię źle, i co muszę zrobić, aby to naprawić, aby LinkButtons były rzeczywiście połączone?
myślę, że rzeczywiście Dobra rzecz (tm). :) – BobbyShaftoe
@BobbyShaftoe, dobra rzecz na jakiej podstawie? Zwykle wszystko, co zmienia stan serwera, powinno wykorzystywać czasownik POST, GET powinien być używany tylko do pobierania danych (są to zalecenia W3C i są przeznaczone dla bezpieczeństwa). Ze względów kosmetycznych nie zawsze można użyć przycisku, stąd potrzeba LinkButton. –