当前位置:编程学习 > C#/ASP.NET >>

asp.net 请教高手

用asp.net listview做的查看订单。。。
订单状态是从数据库读出来的,有等待买家付款,等待卖家发货,等待买家收货
当订单状态是“等待买家付款”时,我想在后面显示一个按钮或者超链接“付款”
当订单状态是“等待买家收货”时,我想在后面显示一个按钮或者超链接“收货”
怎么做怎么做?求帮忙 --------------------编程问答-------------------- 查询中的条件判断 

经常遇到在某些条件下应该查询这个字段,在另外一些条件下需要其他字段的情况,可以通过unoin来完成,但也可以通过CASE WHEN 完成

/*

在State=0 时返回field1 ,在State=1时返回 field2 ,其他时返回field3 

*/

    SELECT (CASE WHEN   State=0 THEN field1 WHEN   State=1 THEN field2 
    ELSE field3 END ) as State
    FROM tablename  

--------------------编程问答--------------------
引用楼主 cheng681263 的回复:
用asp.net listview做的查看订单。。。
订单状态是从数据库读出来的,有等待买家付款,等待卖家发货,等待买家收货
当订单状态是“等待买家付款”时,我想在后面显示一个按钮或者超链接“付款”
当订单状态是“等待买家收货”时,我想在后面显示一个按钮或者超链接“收货”
怎么做怎么做?求帮忙


你可以在一个模板列中,放入两个按钮,一个是“付款”,另一个是“收货”。然后它们的Visible属性分别绑定到你的“订单状态”上,比如说
Visible='<%# (string)Eval("订单状态")=="等待买家付款" %>'
这就只有状态是要付款时才显示,否则不把这个Button输出给浏览器端。对于另外一个按钮也是一样,Visible绑定表达式设置为只有“等待买家收货”时才为true。

然后,在你的两个按钮的后台事件中就正常地处理付款或者收货流程就行了。最好首先验证一下按钮所在数据记录确实是对应的订单状态,这可以避免客户端脚本欺诈。 --------------------编程问答-------------------- 根据订单状态,用一个方法处理控件显示

public void getOperateByOrder(int s){
  switch (s){
       case 1:
         btn1.visible=true;
         btn2.visible=false;
       case 2:
         //....;  
      default: 
}
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,