Je suis en train d'exécuter le code suivant dans une page .aspx:ASP.NET répéteur Eval
<asp:Repeater ID="rptComentarios" runat="server">
<ItemTemplate>
<% if (Convert.ToInt32(Eval("int_tipo")) == 1)
{ %>
<div class="resp">
<div class="top">
</div>
<div class="cont-resp">
<h3>
<%# Eval("txt_nome") %></h3>
<p>
<%# Eval("txt_comentario") %></p>
</div>
</div>
<% }
else
{%>
<div class="usuario">
<div class="top">
</div>
<div class="cont-usuario">
<h3>
<%# Eval("txt_nome") %></h3>
<p>
<%# Eval("txt_comentario") %></p>
</div>
</div>
<% } %>
</ItemTemplate>
</asp:Repeater>
Il lance une exception d'exécution dans la première ligne:
<% if (Convert.ToInt32(Eval("int_tipo")) == 1)
System.InvalidOperationException: Les méthodes de liaison de données telles que Eval(), XPath() et Bind() ne peuvent être utilisées que dans le contexte d'un contrôle de base de données.
Qu'est-ce qui ne va pas? Des idées?
oui je pense, mais je ne peux pas insérer « # » dans cette ligne – ozsenegal
son mal ne peut pas utiliser « # » dans les cas/clauses d'autre – ozsenegal
'if' ne peuvent pas être utilisés à l'intérieur' '<%# ... %> cette réponse est tout simplement faux . La raison pour laquelle les gens ont voté dessus est un mystère pour moi ... – Jakub