首先,这是我的aspx:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="EntityDataSourceTeklifler">
<ItemTemplate>
<div class="panel panel-primary">
<div class="panel-body">
<strong>Teklif No.</strong> <%#Eval("TeklifId") %><br />
<strong>Teklif Tarihi:</strong> <%#Eval("TeklifTarih") %><br />
<strong>Teklifi Hazırlayan:</strong> <%#Eval("Name") %> <%#Eval("Surname") %><br />
<strong>Firma Adı:</strong> <%#Eval("FirmaAdi") %><br />
<strong>Ürünler:</strong><br />
<%#Eval("TeklifSiparis") %>
<strong>Genel Toplam:</strong> <%#Eval("TeklifTutar") %>$<br />
<strong>Not:</strong><br />
<%#Eval("TeklifNot") %><br />
<strong>Teklif Durumu:</strong> <%# CheckIfApproved(Eval("Approved")) %>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
正如您所看到的,我正在尝试在转发器的最后一项中调用方法。这是我的代码隐藏方法:
protected string CheckIfApproved(bool isApproved)
{
string result;
if (isApproved)
{
result = "Satışa Dönmüştür";
}
else
{
result = "Satışa Dönmemiştir";
}
return result;
}
当我运行代码时,我得到一个错误,如“编译错误”,在调用eval行的方法中没有详细说明。我做错了什么?
答案 0 :(得分:1)
<%# CheckIfApproved(Convert.ToBoolean(Eval("Approved"))) %>
按上述方式修改代码:
答案 1 :(得分:0)
试试这个:
protected string CheckIfApproved(object isApproved)
{
string result;
if (bool.Parse(isApproved))
{
result = "Satışa Dönmüştür";
}
else
{
result = "Satışa Dönmemiştir";
}
return result;
}
应该没事!