Repeater绑定显示字段
数据绑定到Repeater,有一状态state列,存的数字,0或1,0表示正常,1表示禁用,如果直接绑定,就显示0或1,我想绑定0的时候显示”正常“,绑定1的时候显示“禁用”,应该怎么办
------解决方案--------------------<%#Eval("state").ToString().Trim()=="0"?"正常":"禁用"%>
------解决方案--------------------Eval("state")==0?"正常":"禁用"
------解决方案--------------------<%#Eval("state").ToString()=="0"?"正常":"不正常"%>
------解决方案--------------------我觉得这样好扩展一些,可以将public string GetState(object e)封装,其他页面亦可调用
test.aspx.cs
public string GetState(object e)
{
return e.ToString().Trim()=="0"?"正常":"不正常";
}
<asp:Repeater ID="rptObjList" runat="server">
<ItemTemplate>
<b><%# GetState(Eval("state"))%> </b>
</ItemTemplate>
</asp:Repeater>
------解决方案--------------------
直截了当。
------解决方案--------------------<%#Eval("state").ToString().Trim()=="2"?"删除":(Eval("state").ToString().Trim()=="0"?"正常":"禁用")%>
------解决方案--------------------其实修改显示状态,不一定非要在页面上处理,如果是数据集是通过sql语句方式查出来的,完全可以在数据库中处理,比如说是oracle数据库,可以用decode(state,0,'正常','禁用')这种方式
------解决方案--------------------
数据库中decode函数,可以全部处理,select decode(state,0,'正常','2','删除','禁用') state_str from XXX,页面上直接<%#Eval("state_str") %>就OK
只是我的个人见解,感觉这样做更简单