假如我有3中状态,一张为创建订单  第二为未付款  第三为交易成功我现在在数据库是用StatuID作为这个字段   0代表创建订单  1代表未付款   2代表交易成功但是在绑定时显示订单状态的时候不能显示0 1 2吧就是如果就2的话可以用
<%#Convert.Toint32(Eval("StatuID"))==1 ? "未付款" : "交易成功"%>但是 3个呢,请教

解决方案 »

  1.   

    比较好的做法是写到GridView控件的行绑定事件方法中,也可以这么写:<%#Convert.Toint32(Eval("StatuID"))==0 ?"创建订单":Convert.Toint32(Eval("StatuID"))==1?"未付款" : "交易成功"%>可能要加个括号,你先试下。
      

  2.   

    那就不要用三目运算符
    public string GetType(int StatuID)
    {
        switch(StatuID)
        {
             case 0:
               return "创建订单";
             case 1:
               return "..";
             case 2:
               return ".."; 
             default:
               return "";
        }  
    }
    <%#GetType((int)Eval("StatuID"))%>
      

  3.   


    protected string GetOrder(object id)
    (
        switch(Convert.ToInt32(id))
       {
            case 0:return "创建订单";
            case 1:return "未付款";
            case 2:return "交易成功";
            default:return "数据有误";
       }
    )
    <%# GetOrder(Eval("StatuID")) %>