我想在转发器中调用aspx页面中的函数:
<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(&#34; DnAd&#34;)? 谢谢你的帮助。
答案 0 :(得分:1)
我认为您应该使用IIf
运算符
<a href="yorumlar.aspx?id=1"><%# IIf(yorumsay(Eval("DnAd")) = 0, "bla bla bla", yorumsay(Eval("DnAd")) + " adet yorum var")%></a>
在C#中称为三元运算符
<a href="yorumlar.aspx?id=1"><%# yorumsay(Eval("DnAd")) = 0 ? "bla bla bla" : yorumsay(Eval("DnAd")) + " adet yorum var")%></a>
我相信您的网页已经可以使用yorumsay()
方法