Asp.net 如何在repeater中设置变量的值
我想在中继器的aspx页面中调用一个函数:Asp.net 如何在repeater中设置变量的值,asp.net,vb.net,repeater,Asp.net,Vb.net,Repeater,我想在中继器的aspx页面中调用一个函数: <asp:Repeater ID="Rpt_M" runat="server"> <HeaderTemplate></HeaderTemplate> <ItemTemplate> <a href="noktaDetay.aspx?id=1" ><%# Container.DataItem(1)%></a> <%Dim yorumi
<asp:Repeater ID="Rpt_M" runat="server">
<HeaderTemplate></HeaderTemplate>
<ItemTemplate>
<a href="noktaDetay.aspx?id=1" ><%# Container.DataItem(1)%></a>
<%Dim yorumid As Integer = Eval("DnAd")
Dim yorumadet = yorumsay(yorumid)
Dim yorumyaz As String = yorumadet + " adet yorum var"
If yorumadet = 0 Then yorumyaz = "bla bla bla"%>
<a href="yorumlar.aspx?id=1"><%=yorumyaz%></a>
</ItemTemplate>
<FooterTemplate></FooterTemplate>
</asp:Repeater>
运行代码时,出现以下错误:
诸如Eval()、XPath()和Bind()之类的数据绑定方法只能在数据绑定控件的上下文中使用
如何设置yorumid的值而不是使用eval(“DnAd”)?
谢谢您的帮助。我想您应该使用
IIf
操作符
<a href="yorumlar.aspx?id=1"><%# IIf(yorumsay(Eval("DnAd")) = 0, "bla bla bla", yorumsay(Eval("DnAd")) + " adet yorum var")%></a>
它在C语言中被称为三元运算符#
我相信
yorumsay()
方法已经可以用于您的页面了是的,但是问题是我不能使用yorumsay(yorumid),因为yorumid没有价值。如何将rowid值分配给yorumid?yorumsay(id为整数)是一个简单的函数,它对表中的行进行计数并返回值。检查我的更新:将yorumid
替换为Eval(“DnAd”)
它已排序。谢谢你,科丁比兹:)
<a href="yorumlar.aspx?id=1"><%# yorumsay(Eval("DnAd")) = 0 ? "bla bla bla" : yorumsay(Eval("DnAd")) + " adet yorum var")%></a>